查内存泄漏的方法

1. 先查是否所有申请内存都释放,包括: 
new / new [] ----  delete / delete []  //注意一一对应 
malloc ----  free 
CoTaskMemAlloc ----  CoTaskMemFree 
SysAllocString ----  SysFreeString 
SafeArrayCreate ----  SafeArrayDestroy 
CreatePen/CreateBrush ----  DeleteObject 
GetDC ----  ReleaseDC 
ITypeInfo::GetTypeAttr()  ----  ITypeInfo::ReleaseTypeAttr() 
COleSteamFile::OpenStream, 
CreateStream, CreateMemoryStream  ----  COleStreamFile::Close() 

2. 使用performance察看内存在哪个时段增加后没有释放。在cmd中键入perfmon,就可以打开,至于怎么用上网自己查。 

3. 再就是使用一个类CMemorySate,来查看某段代码申请内存后是否释放。这个类很简单自己看看MSDN就能会用。

 

http://bbs.csdn.net/topics/310245629

你可能感兴趣的:(查内存泄漏的方法)