谁帮我解释一下MFC自动生成的这些代码是做什么用的. #ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 //如果定义了_DEBUG,也就是说如果程序运行在debug模式下#ifdef _DEBUG//把new定义成DEBUG_NEW,因为在debug模式和release模式下,new的操作是不一样的,debug模式下new 一块内存的话会在头上加一段东西,所以delete的时候也要对应起来,比较有意思的错误是你的主程序是release版,而在主程序里面调用的一个dll是debug版,同时在dll里面new出来的内存要在主程序里面delete掉这时候就出问题了,因为debug版的new对上了release版的delete#define new DEBUG_NEW//去掉THIS_FILE这个宏定义防止与下面的变量名字冲突#undef THIS_FILE//定义变量THIS_FILE用来存放当前.cpp文件的名字,可以在程序里面使用static char THIS_FILE[] = __FILE__;//结束#endif 新手请教:WM_Onchar 必须在view类中才能响应吗 线程同步问题,请高人进来指导一下 请做过mschart或其他图表方面项目的大侠进来坐坐~ 用驱动读写CMOS端口有时成功,有时失败。请高手指教! 关于在控制台用UNICODE输出汉字的问题。。。 OnChar函数中nFlags的各个位的含义? 如何模拟user点了一下查询按钮? 请教高手一个问题 数据检索问题,请教! 各位高手给我推荐一本学习c++的好书(中文的) 高分!!关于系统托盘 sos求救
#ifdef _DEBUG
//把new定义成DEBUG_NEW,因为在debug模式和release模式下,new的操作是不一样的,debug模式下new 一块内存的话会在头上加一段东西,所以delete的时候也要对应起来,比较有意思的错误是你的主程序是release版,而在主程序里面调用的一个dll是debug版,同时在dll里面new出来的内存要在主程序里面delete掉这时候就出问题了,因为debug版的new对上了release版的delete
#define new DEBUG_NEW
//去掉THIS_FILE这个宏定义防止与下面的变量名字冲突
#undef THIS_FILE
//定义变量THIS_FILE用来存放当前.cpp文件的名字,可以在程序里面使用
static char THIS_FILE[] = __FILE__;
//结束
#endif