MFC查内存泄漏方法

此方法仅使用于固定内存地址的泄漏问题(如果地址不固定,需要多次尝试,会比较难找,或者是主动分析才能找得到)

工作中MFC工程调试遇到关闭工程时,输出视图出现内存泄漏,如下图所示:

 

 

在theApp.InitInstance()中加上如下接口:
_CrtSetBreakAlloc(34719); // 测试内存泄漏,参数是上图中泄漏的地址

如下图所示

 

 再次启动程序,触发断点,如下图:

 

 

点击中断按钮,在调用堆栈视图中,查找到内存泄漏的问题所在,是下图中new了一个对象放到map容器中

 

 所以做了map容器的清理操作,如下图:

 

 再次测试,关闭程序时,输出窗口已经不再出现内存泄漏问题,如下图所示。

 

posted @ 2020-09-18 09:47  二是一种不三不亖的范  阅读(983)  评论(0编辑  收藏  举报