VLD(Visual Leak Detector)在Visual Studio 2015中的使用

1、前言

本週在工做中接觸了VLD(Visual Leak Detector)工具,該工具是一款在Visual Studio C++中使用的開源的檢測內存泄露軟件,本文從編譯VLD開始記錄該工具的使用方法。git

2、下載VLD

VLD的倉庫連接:https://github.com/KindDragon/vld 下載後目錄以下: 在這裏插入圖片描述github

3、編譯VLD

  1. 使用Visual Studio 2015打開vld_vs14.sln,打開工程以下: 在這裏插入圖片描述
  2. 編譯其中的「vld」工程,若編譯Win32版本,則會在vld/src/Win32/Debug-v140目錄下生成vld.lib;若編譯x64版本,則會在vld\src\bin\x64\Debug-v140目錄下生成vld.lib。

4、使用VLD檢測內存泄漏

  1. 新建C++項目:Project。工具

  2. 在Project項目的屬性頁包含目錄vld/src,以下圖: 在這裏插入圖片描述測試

  3. 在Project項目的屬性頁包含vld庫目錄,例如此處使用x64版本的庫目錄:vld\src\bin\x64\Debug-v140。 在這裏插入圖片描述url

  4. 在Project項目的屬性頁添加依賴項vld.lib,以下圖: 在這裏插入圖片描述.net

  5. 將\vld\src\bin\x64\Debug-v140\vld_x64.dll拷貝到Project工程的exe可執行文件所在的目錄下。code

  6. 將目錄vld\setup\dbghelp\x64目錄下的dbghelp.dll和Microsoft.DTfW.DHL.manifest文件拷貝到Project工程的exe可執行文件所在的目錄下,以下圖: 在這裏插入圖片描述blog

  7. 測試程序:圖片

#include "vld.h"      //測試程序的內存泄露只需包含頭文件vld.h
#include "stdio.h"
#include <stdlib.h>

int main()
{
	char * str = (char*)malloc(10);
	//free(str);
	return 0;
}

運行結果以下圖:內存

在這裏插入圖片描述

若把 free(str); 代碼的註釋取消,再編譯運行,結果以下: 在這裏插入圖片描述

相關文章
相關標籤/搜索