1、檢測內存泄露的方法: http://blog.csdn.net/skyremember/article/details/2941038
有具體的錯誤解釋
2、C++:VS2005檢查內存泄露的簡單方法 - 鄭文亮 http://www.xue5.com/Developer/C++/656375.html
顯示 #define new DEBUG_NEW方法,比較具體
3、使用_CrtDumpMemoryLeaks()查內存泄露的一些問題
http://blog.sina.com.cn/s/blog_4d7d5ba501019ca9.html
4、VLD使用 http://hi.baidu.com/pdaliu/item/5b70bfb8948e9bea4fc7fda6
vs2010使用vld檢測內存泄露 http://blog.csdn.net/wolfking_2009/article/details/8995046
Visual Leak Detector(vld)無法顯示內存泄露文件名與行號 http://blog.csdn.net/xiexievv/article/details/8221327
5、vs中檢測內存泄漏的方法 http://blog.csdn.net/windows_nt/article/details/8652191
共三種方法
6、在vc2008中用_crtBreakAlloc調試內存泄漏 http://blog.chinaunix.net/uid-21375345-id-3290446.html
知道固定的內存編號可使用此法,如:Dumping objects ->
{858} normal block at 0x003ED290, 12 bytes long。{}中的858即內存編號
具體自己vs2010調試實現:
首先確定自己的程序使用的是哪個C運行庫,方法是程序Propertise -> C/C++ -> Code Generation -> Runtime Library選項,若爲Multi-threaded Debug(/MTd),則爲靜態鏈接,若爲Multi-threaded Debug DLL(/MDd),則爲動態鏈接。
然後按F11啓動程序,程序會停在入口點。此時調出Watch窗口,
靜態鏈接 在name項中輸入_crtBreakAlloc,在value項中輸入你要定位的內存分配編號;
動態鏈接 在name項中輸入{,,msvcr100d.dll}_crtBreakAlloc,在value項中輸入內存分配號。注意msvcr90d.dll是vc2008環境使用的運行庫dll,若你用的是其他版本vc,請換成對應版本的dll。
現在按F5運行,程序就會自動定位到你要調試的內存分配語句,這時候看call stack的信息會很有幫助。
7、內存泄漏及檢測(英文) http://blog.csdn.net/mikefeng/article/details/1765613
其中包含造成內存泄露的原因類型