作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想设置一个 Debug模式,以便它只在 Debug模式打开时打印日志语句。例如,如果我有这样的代码
printf("something \n");
.
.
.
perror("something \n");
它只有在调试标志打开时才有效。我不想使用“if”语句。我认为有一种聪明的方法可以使用#define 或其他东西来做到这一点。
谢谢提前..
最佳答案
#ifdef _DEBUG // or #ifndef NDEBUG
#define LOG_MSG(...) printf(__VA_ARGS__) // Or simply LOG_MSG(msg) printf(msg)
#else
#define LOG_MSG(...) // Or LOG_MSG(msg)
#endif
在非调试构建的 LOG_MSG
上将一无所获。您可以调用自定义日志记录函数或类方法,而不是使用原始 printf 定义它。
关于c++ - 如何在 C++ 中设置 Debug模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6406307/
我是一名优秀的程序员,十分优秀!