作者wayfarer (wayfarer)
看板Programming
标题Re: [请益] Detected memory leaks!的解决之道??
时间Wed Aug 23 15:03:37 2006
※ 引述《wayfarer (wayfarer)》之铭言:
: 在每个 *.cpp 的档案中加入下面这四行,要加在你的 #include <...> 之後,
: 要不然会影响到那些include的header files。
: //==================================================
: #ifdef _DEBUG
: #include <crtdbg.h>
: #define new new(_NORMAL_BLOCK ,__FILE__, __LINE__)
: #endif
: //==================================================
: 这样在 Debug 模式run程式,最後那些没被delete的 memory block,
: VC都会告诉你是在那个档案的那一行没被delete。
查了一下, vc2005 还要在程式结束前加上:
//=======================
#ifdef _DEBUG
_CrtDumpMemoryLeaks();
#endif
//=======================
这样就有了:
Detected memory leaks!
Dumping objects ->
c:\documents and settings\administrator\my documents\visual studio
2005\projects\test1\test1\test1.cpp(18) : {92} normal block at 0x003A7A60, 40
bytes long.
Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD
Object dump complete.
我用VC2003不用 call _CrtDumpMemoryLeaks() 也行。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 222.250.127.47
1F:推 Uihc:谢谢你热心的分享~我用的是vs2003..但是没有 61.31.149.50 08/23 22:07
2F:→ Uihc:出现像您说的提示讯息..是不是因为我的错误 61.31.149.50 08/23 22:08
3F:→ Uihc:并不是因为没有释放记忆体,而是其他原因?.? 61.31.149.50 08/23 22:09