在VS2012中添加部分代码,可以起到检测内存泄露的作用。
今天刚刚收到的解决办法,原理还不是很清楚。先分享出来
1. 头文件中添加以下代码
#ifdef _DEBUG #define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__) #else #define DEBUG_CLIENTBLOCK #endif #define _CRTDBG_MAP_ALLOC #include#include #ifdef _DEBUG #define new DEBUG_CLIENTBLOCK #endif /* 何问起 hovertree.com */
2. main函数中添加
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_CRTDBG_LEAK_CHECK_DF); /* 何问起 hovertree.com */
程序在DEBUG模式下运行时,就可以在输出窗口中看到可能出现的内存泄露信息
推荐: