您的位置:首页 > 其它

使用预处理器进行调试

2015-12-19 22:34 162 查看
#include "iostream"
using namespace std;

void getMoney(int count)
{
if (count>0)
{
cout << "取钱成功" << endl;
}
}
int main()
{
#ifndef NDEBUG
cerr<<"start debug"<<endl;
#endif
return 0;
}


通常在开发过程中执行的代码,在程序完成之后,可以将调试的代码关闭,这里就可以进行有条件的调试。

在属性的C++命令行里加入 /NDEBUG后,原来在#ifndef #endid 里面的代码将不会运行,这就是发布的程序。

预处理器还定义了其余四种在调试时非常有用的常量:

#include "iostream"
using namespace std;

void getMoney(int count)
{
if (count>=0)
{
cout << "取钱成功" << endl;
}
else{
cout << "文件" << __FILE__
<< "行数" << __LINE__
<< "日期" << __DATE__
<< "时间" << __TIME__
<< endl;
}
}
int main()
{
getMoney(-10);
return 0;
}


另一个常见的调试技术是使用NDEBUG预处理变量以及assert(断言)预处理宏。

必须要加上头文件#include<cassert>

这里遇见不对劲的会产生这种效果!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: