Есть примерно следующий кусок в хеадер файле С-проекта
Цитата:
#ifdef TRUE
#undef TRUE
#define TRUE 1
#else
#define TRUE 1
#endif
#ifdef FALSE
#undef FALSE
#define FALSE 0
#else
#define FALSE 0
#endif
Все работало нормально, пока не пришлось подключить библиотеку, в которой прописано:
Цитата:
typedef enum { FALSE = 0, TRUE = !FALSE } bool;
Теперь компайлер, естессно, матерится, что тип уже объявлен. Как быть? Надо чтобы код работал с библиотекой и без. Как можно узнать, что константа определена уже через enum?