C++ 内存泄露处理方法 (转)
1.可以显示内存泄露情况,但无法找到具体的文件位置写法
包含头文件#include <crtdbg.h>
然后在需要检测内存泄露的位置加上语句
_CrtDumpMemoryLeaks();
之后的显示就是内存泄露的多少及块情况信息。
2.还要显示在何文件中泄露
将头文件语句换成为
#ifdef _DEBUG
#define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__)
#else
#define DEBUG_CLIENTBLOCK
#endif
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>
#ifdef _DEBUG
#define new DEBUG_CLIENTBLOCK
#endif
此时将能定位到泄露的具体文件,按F4可以进行查找。
饮水思源,不忘初心。
要面包,也要有诗和远方。