LINUX.ORG.RU

История изменений

Исправление invy, (текущая версия) :

Где там макросы? Там просто удобный механизм включения логирования для каждой конкретной функции.

если хочешь делать дебаг макросами, то делай лучше так:

#include <iostream>

#ifdef DEBUG
 #define DBGOUT(x) std::cout << x << "\n";
#else
 #define DBGOUT(x)
#endif /* DEBUG */

int main() {
 DBGOUT("test");
}
если компилируешь с -DDEBUG, вывод будет, если без - нет.

это не идеальный метод, но довольно простой и код получается аккуратным.

Исходная версия invy, :

Где там макросы? Там просто удобный механизм включения логирования для каждой конкретной функции.

если хочешь делать дебаг макросами, то делай лучше так:

#ifdef DEBUG
 DBGOUT(x) std::cout << x << "\n";
#else
 DBGOUT(x)
#endif /* DEBUG */

это не идеальный метод, но довольно простой и код получается аккуратным.