首先建立一个文件memoryleak.h,在文件中保存如下代码,然后在需要进行内存检测的cpp文件中包含此头文件.在程序的开始通过调用 _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );语句可以在程序退出时检测出内存发生泄漏的部分。
- #pragma once
- #ifdef _DEBUG
- #define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__)
- #else
- #define DEBUG_CLIENTBLOCK
- #endif
- #define _CRTDBG_MAP_ALLOC
- #include <stdlib.h>
- #include <crtdbg.h>
- #ifdef _DEBUG
- #define new DEBUG_CLIENTBLOCK
- #endif