c – “#define new DEBUG_NEW”和“#undef THIS_FILE”等是否真的有必要?

创建新的MFC应用程序时,向导将在几乎每个CPP文件中创建以下代码块:
#ifdef _DEBUG
#define new DEBUG_NEW
#endif

有时它也增加了这一点:

#undef THIS_FILE
static char THIS_FILE[] = __FILE__;

如果它是多余的,我想从我的CPP文件删除代码.我在VS2008上使用带有C/C++LI的MFC应用程序.

在CPP中删除代码之后,我已尝试在Debug中运行,似乎工作正常. “新”变量工作正常,没有泄漏,ASSERT对话框显示正确的文件名并跳转到违规行.

任何人都可以告诉我它有什么作用以及是否可以删除它?

解决方法

删除这个是完全安全的.这是一个调试帮助留下它会在程序退出时出现的任何内存泄漏的输出窗口中生成警告.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...