美文网首页C++
Visual Studio的Detected memory le

Visual Studio的Detected memory le

作者: wjh2005dev | 来源:发表于2018-12-18 09:00 被阅读18次

Visual Studio调试程序时,程序退出后出现内存泄漏:

Detected memory leaks!
Dumping objects ->
 {9554} normal block at 0x003CDCC0, 44 bytes long.
Data: < e n d > 20 C1 65 01 01 00 00 00 6E 00 00 00 9C CE 64 01
 {9553} normal block at 0x003CDB58, 8 bytes long.
 Data: < D e < > 44 BD 65 01 C0 DC 3C 00
{9552} normal block at 0x003CDC50, 48 bytes long.
 Data: < e > A0 95 65 01 01 00 00 00 19 00 00 00 19 00 00 00
 Object dump complete.

解决方法:

1. 在程序开始启动的地方(足够前的地方,只要在泄漏的内存分配的前面)使用代码:

_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
 _CrtSetBreakAlloc(9554);   // 9554为上面内存泄漏的块号.
 _CrtSetBreakAlloc(9553);
 _CrtSetBreakAlloc(9552);

2. 然后debug运行,程序自动断点在"内存块9554"分配的位置:

相关文章

网友评论

    本文标题:Visual Studio的Detected memory le

    本文链接:https://www.haomeiwen.com/subject/yphkkqtx.html