如果大家使用的是 Windows + Visual Studio 的话,有一个简单的方法,就是在让所有*.cpp文件在预处理之后,最上面都是这几行:
#define _CRTDBG_MAP_ALLOC #include#include #define NEW_WITH_MEMORY_LEAK_CHECKING new(_NORMAL_BLOCK, __FILE__, __LINE__) #define new NEW_WITH_MEMORY_LEAK_CHECKING
方法有几个:
如果你的程序有多个cpp,那可以把这一段写在一个大家都会直接或间接#include的头文件里面,而且最好放在最开头
在上面的一种情况下,如果 Visual Studio 建立的工程还使用了预编译文件头,那可以把这几行贴在stdafx.h的最上方。
如果你的程序只有一个cpp,那直接贴在cpp文件的最上方就好了
接下来,你需要在程序即将运行完毕的阶段,添加以下代码:
_CrtDumpMemoryLeaks();
你可以将其添加到主函数的return 0;语句上方。
#include#include #include #include #include #include



