1. 程式人生 > >Visual Leak Detector 2.2.3 Visual C++記憶體檢測工具

Visual Leak Detector 2.2.3 Visual C++記憶體檢測工具

         Visual Leak Detector是一款免費的、健全的、開源的Visual C++記憶體洩露檢測系統。相比Visual C++自帶的記憶體檢測機制,Visual Leak Detector可以顯示導致記憶體洩露的完整記憶體分配呼叫堆疊。         下載Visual Leak Detector,當前版本2.2.3,在Visual C++ IDE的"工具"→"選項"→"專案和解決方案"→"VC++ 目錄","包含檔案"增加VLD的"\include"路徑,"庫檔案"增加VLD的"\lib\Win32"路徑,另外動態庫"\bin\Win32"路徑在安裝時已經新增到環境變數裡面了,若是未新增,則需要手動拷貝"\bin\Win32"下的檔案到工程Debug目錄。下面記錄下使用方法: 1.新建一個Win32控制檯專案; 2.新增程式碼如下所示:
1
2
3
4
5
6
7
8
#include "stdafx.h" 
#include "vld.h" 
 
int _tmain(int argc, _TCHAR* argv[]) 

    char
 *pBuf = new char[200]; 
    return 0
3.在Debug模式下的“輸出”視窗,將有如下資訊:

報告列出了記憶體洩露是在第幾塊,所在的地址,洩露的位元組,呼叫的堆疊,記憶體內容。雙擊呼叫堆疊可以跳轉到所在行。 4.在Release模式下,不會連結Visual Leak Detector。 5.Visual Leak Detector有一些配置項,可以設定記憶體洩露報告的儲存地(檔案、偵錯程式),拷貝"\Visual Leak Detector"路徑下的vld.ini檔案到工程的Debug目錄下(在IDE執行的話,則需要拷貝到工程目錄下),修改以下項:
ReportFile =
.\memory_leak_report.txt 
ReportTo = both 直接雙擊Debug目錄下exe,結果如下圖所示:
檔案內容跟“輸出”視窗的內容一樣。