c/C++的一个重要特色是可以动态的分配和释放内存,我们的口号是new和delete成对出现。可是,总会由于各种各样的原因,有内存泄露的情况发生,借助visual C++ 集成开发环境,可以方便的检查内存泄露信息,具体方法如下:
1、在stdafx.h头文件中添加两行代码
//内存泄露检测
#define _CRTDBG_MAP_ALLO
#include <crtdbg.h>
2、在程序退出的地方添加函数,
_CrtDumpMemoryLeaks();
执行程序,如果有内存泄露则可以在调试输出窗口看到如下信息view plaincopy to clipboardprint?
Detected memory leaks!
Dumping objects ->
tooltip.cpp(394) : {387} client block at 0x00387FE0, subtype c0, 112 bytes long.
a CToolTipCtrl object at $00387FE0, 112 bytes long
g:/c++/vc_prac/mfc_prac/pos_system/pos_systemview.cpp(174) : {312} normal block at 0x00387F40, 100 bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
Detected memory leaks!
Dumping objects ->
tooltip.cpp(394) : {387} client block at 0x00387FE0, subtype c0, 112 bytes long.
a CToolTipCtrl object at $00387FE0, 112 bytes long
g:/c++/vc_prac/mfc_prac/pos_system/pos_systemview.cpp(174) : {312} normal block at 0x00387F40, 100 bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
能看到泄露的内存分配时候的文件、代码行,等信息
本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/stuarts740/archive/2009/02/20/3915830.aspx