求救:为什么会内存泄漏?
在下新手一个,我写的一个基于对话框的程序,编译都通过了,但是一运行,立刻就占用9X%的CPU,连对话框都没弹出来,后来设置断点跟踪到.../MFC/SRC/DLGCORE.cpp文件中
// create modeless dialog
AfxHookWindowCreate(this);
--> hWnd = ::CreateDialogIndirect(hInst, lpDialogTemplate,
pParentWnd->GetSafeHwnd(), AfxDlgProc);
行时出现错误
弹出Debug Library对话框
dlgdata.cpp
line 43
有错
'关闭'后下面的Debug 窗口提示如下,告诉Detect memory leak?这是为什么呢
我用的链表和节点头文件是基于Template的,回合这个有关系吗?
Loaded 'ntdll.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\kernel32.dll', no matching symbolic information found.
Loaded symbols for 'D:\WINDOWS\system32\MFC42D.DLL'
Loaded symbols for 'D:\WINDOWS\system32\MSVCRTD.DLL'
Loaded 'D:\WINDOWS\system32\gdi32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\user32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\advapi32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\rpcrt4.dll', no matching symbolic information found.
Loaded symbols for 'D:\WINDOWS\system32\MFCO42D.DLL'
Loaded symbols for 'D:\WINDOWS\system32\MFCN42D.DLL'
Loaded symbols for 'D:\WINDOWS\system32\MSVCIRTD.DLL'
Loaded 'D:\WINDOWS\system32\imm32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\lpk.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\usp10.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\mfc42loc.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\wsock32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\ws2_32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\ws2help.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\comctl32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\MSCTF.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\nview.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\SHLWAPI.DLL', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\shell32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\psapi.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\ole32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\powrprof.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\version.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\olepro32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\oleaut32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\ddraw.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\dciman32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.10.0_x-ww_f7fb5805\comctl32.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\MSCTFIME.IME', no matching symbolic information found.
Error: no data exchange control with ID 0x03ED.
Loaded 'D:\WINDOWS\system32\nviewimg.dll', no matching symbolic information found.
Loaded 'D:\WINDOWS\system32\MSIMTF.dll', no matching symbolic information found.
Detected memory leaks!
Dumping objects ->
strcore.cpp(118) : {63} normal block at 0x00421720, 45 bytes long.
Data: < > 01 00 00 00 04 00 00 00 20 00 00 00 CB CE CC E5
{62} normal block at 0x00421780, 32 bytes long.
Data: < > FF FF FF FF CD CD CD CD CD CD CD CD CD CD CD CD
Object dump complete.
The thread 0x11C has exited with code 3 (0x3).
The program 'H:\MFC\Debug\MFC.exe' has exited with code 3 (0x3).