是否有一个简洁的方法将文本输出到调试窗格?

lea*_*vst 2 c++ debugging macros console

我想在调试时显示一些日志消息.一种选择是使用非常丑陋的

#ifdef DEBUG
    std::cout << "I'm in debug mode!\n";
#endif
Run Code Online (Sandbox Code Playgroud)

JUCE库中,有一个很好的宏可以将文本输出到调试窗格

DBG("I'm in debug mode!")
Run Code Online (Sandbox Code Playgroud)

juce解决方案还允许您做出如下所示的整洁的东西

int x = 4;
DBG(String("x=") + String(x))
Run Code Online (Sandbox Code Playgroud)

我想知道std ::或boost ::中是否存在类似的整齐方法

Luc*_*ore 6

为什么不写自己的:

#ifdef DEBUG
#define DBG(x) std::cout << x;
#else
#define DBG(x)
#endif
Run Code Online (Sandbox Code Playgroud)

对于名称空间

namespace DBG
{
inline void DBG(const char* x)
{
#ifdef DEBUG
    std::cout << x;
#endif
}
}
Run Code Online (Sandbox Code Playgroud)