我正在从事一个MFCVisualC++项目。正如我从MSDN了解到的,当内存泄漏时,_CrtDumpMemoryLeaks()应该返回TRUE。
在注意到是 TRUE之后,我尝试找到代码中的第一点,在这里它变成了真。显然,这从一开始就是事实。如果单击F10 (步骤)开始调试程序,并在“监视”窗口中输入_CrtDumpMemoryLeaks(),则即使在第一行代码之前,程序的入口点也会显示为真:
extern "C" int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
_In_ LPTSTR lpCmdLine, int nCmdShow)
#pragma warning(suppress: 4985)
{
// call shared/exported WinMain
return AfxWinMain(hInstance, hPrevInstance, lpCmdLine, nCmdShow);
}此外,我推测,可能调试工具在这一点上没有被初始化,并且真是错误的。因此,我在OnInitDialog()函数的第一行设置了一个断点,这个值也是真的。
为什么我在程序的早期就有内存泄漏?
https://stackoverflow.com/questions/4204844
复制相似问题