我在Visual Studio 2008上开发了C 应用程序在以下代码上,我会得到以下内存泄漏:
f: dd vctools vc7libs ship atlmfc src src mfc mfc strcore.cpp(141):{8386}正常块在0x11bf9db0,25字节长。 数据:<3C 4E 4B 55 08 00 00 00 08 00 00 00 01 00 00 00 00 00
我尝试了许多版本,并确保这里没有内存泄漏。它是Cstring中的缺陷吗?我该如何绕过这个?
void fff(CString &s1,CString &s2)
{
int nSize =100;
TCHAR *xx = new TCHAR[100];
::GetEnvironmentVariable( s1, xx, nSize );
CString sss(xx);
s2 = sss;
delete[] xx;
}
我在新鲜创建的MFC应用程序上也会得到许多这样的泄漏
尝试Visual C 2008/2010/2012的视觉泄漏检测器。
https://vld.codeplex.com/
它将为您提供记忆泄漏的确切位置。