c++中追踪程序是否有内存泄漏

来源:互联网 发布:图像修复软件 编辑:程序博客网 时间:2024/06/01 18:25

在main()函数中加上如下代码:

void main(){//用来追踪是否有内存泄漏int tmpDbgFlag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); //得到当前的CrtDbgFlag状态tmpDbgFlag |= _CRTDBG_LEAK_CHECK_DF;                  //打开内存泄漏自动检查开关_CrtSetDbgFlag(tmpDbgFlag);                           //设置CRT调试堆的新状态int * p = new int[4];return;}
在debug窗口中会进行如下提示:

Detected memory leaks!Dumping objects ->{131} normal block at 0x00384978, 16 bytes long. Data: <                > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD Object dump complete.


关于CRT调试堆的详细介绍:http://blog.csdn.net/ugg/article/details/1585639(没怎么看懂~~)

原创粉丝点击