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就能会用。