我是 cpp 的新手(来自 Java)。 我正在写一个 cpp 应用程序。该应用程序对性能至关重要。 我寻找了一个日志框架,然后找到了 log4cxx 在上面链接的末尾有性能部分解释:
When logging is turned off entirely or just for a set of levels, the cost of a log request consists of a method invocation plus an integer comparison
我记得以前在大学时,我们使用 #ifndf
来包装日志记录。
问题:
用
#ifndf
包装日志记录仍然是标准做法吗?有没有类似于下面的伪代码?
logger.Log_Debug(() => { "My complicated log message " + thisFunctionTakesALongTime() + " will take no time" });
最佳答案
您可以创建自己的在 Release模式下不执行任何操作的宏:
#ifdef _DEBUG
#define LOG_DEBUG(x) logger.Log_Debug(x)
#else
#define LOG_DEBUG(x)
#endif
关于c++ - 登录 C++(性能考虑),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11676344/