gpt4 book ai didi

c++ - 如何使用这个调试宏?

转载 作者:搜寻专家 更新时间:2023-10-31 00:37:52 24 4
gpt4 key购买 nike

using namespace std;
#ifdef DEBUG
#define debug(args...) {dbg,args; cerr<<endl;}
#else
#define debug(args...) // Just strip off all debug tokens
#endif

struct debugger
{
template<typename T> debugger& operator , (const T& v)
{
cerr<<v<<" ";
return *this;
}
} dbg;


int main(){
int a=1,b=2,c=3;
debugger(a,b,c);
}

我找到了这个调试宏,我正在尝试使用它,但它不起作用。我收到以下错误:

ubuntu:~ g++ -DEBUG a.cpp -o a
a.cpp: In function ‘int main()’:
a.cpp:81:16: error: no matching function for call to ‘debugger::debugger(int&, int&, int&)’
a.cpp:81:16: note: candidates are:
a.cpp:62:8: note: debugger::debugger()
a.cpp:62:8: note: candidate expects 0 arguments, 3 provided
a.cpp:62:8: note: debugger::debugger(const debugger&)
a.cpp:62:8: note: candidate expects 1 argument, 3 provided

最佳答案

您可以简单地尝试使用:-

debug(a, b, c);

您还必须更改命令行 -DDEBUG -- -D 是“define”。目前您正在定义 "EBUG"

关于c++ - 如何使用这个调试宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19097913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com