Luabind+Visual Studio 2010 (комментарии)
Это сообщение сгенерировано автоматически.
Странного что-то в студии сделали. Вероятно готовят всех к переходу на C++0x
правильней вместо (void *)0 или NULL использовать nullptr.
А я всегда осуждал написание 0 вместо NULL... Вот и вылезло боком, представляю такой проект из нулей, веселуха будет, не завидую... :)
Executor
> 0 вместо NULL...
NULL ведь определен в windows.h, и определен он там как:
#ifndef NULL #ifdef __cplusplus #define NULL 0 #else #define NULL (( void *)0) #endif #endif
MarkoPolo
Executor похожу хочет сказать, что явный NULL располагает к автоматизации портирования на nullptr.
MarkoPolo
Ну это в 2008ой, в 2010 наверняка подругому написано... У кого 2010 поглядите, что из себя дефайн представляет?
Я просто к тому, что юзая NULL таких проблем быть не должно ни в 2008, ни в 2010...
в 2010 как-то так
stddef.h
/* Define NULL pointer value */
#ifndef NULL
#ifdef __cplusplus
#define NULL 0
#else
#define NULL ((void *)0)
#endif
#endif
#ifdef __cplusplus
#ifdef _NATIVE_NULLPTR_SUPPORTED
namespace std { typedef decltype(__nullptr) nullptr_t; }
using ::std::nullptr_t;
#endif
#endif
#ifdef __cplusplus #define NULL 0
а вот ето странно, почему тогда ошибку выдавало то.
Я на NULL заменять правда не пробовал, но судя по дефайну ничего бы не поменялось.
Так поидее в куче мест должно повылазилть эта вещь.
Ктото еще свои проекты портировал на новую студию?
Wolfaka
> Я на NULL заменять правда не пробовал, но судя по дефайну ничего бы не поменялось.
И всё таки попробуй проверить, будет ли ошибка, если NULL поставить?
Нет не компилируется.
Вообще проверять это легко
попробуйте создать std::pair<int,void*>
и запихнуть туда 0,0
Тема в архиве.