История изменений
Исправление ratatosk, (текущая версия) :
Твой вариант в любом случае плох тем, что даже есть DEBUG не определен, аргументы будут вычислены
Что-то типа (не тестировал)
#ifdef DEBUG
#define DEBUG_PRINT(x) do {std::cerr << x;} while (0)
#else
#define DEBUG_PRINT(x)
#endif
DEBUG_PRINT() << "blabla";
#ifdef DEBUG
#define DEBUG_PRINT()\
if (true) std::cerr
#else
#define DEBUG_PRINT()\
if (false) std::cerr
#endif
Исходная версия ratatosk, :
Твой вариант в любом случае плох тем, что даже есть DEBUG не определен, аргументы будут вычислены
Что-то типа (не тестировал)
#ifdef DEBUG
#define DEBUG_PRINT(x) do {std::cerr << x;} while (0)
#else
#define DEBUG_PRINT(x)
#endif
DEBUG_PRINT() << "blabla";
#ifdef DEBUG
#define DEBUG_PRINT()\
if (true) std::cerr
#else
if (false) std::cerr
#endif