記憶體洩露檢測 VLD工具

2021-06-16 11:30:51 字數 1297 閱讀 8514

一.        vld工具概述

visual leak detector(vld)是一款用於visual c++的免費的記憶體洩露檢測工具。他的特點有:可以得到記憶體洩漏點的呼叫堆疊,如果可以的話,還可以得到其所在檔案及行號;  可以得到洩露記憶體的完整資料; 可以設定記憶體洩露報告的級別;並且是開源免費的。

三.        vld安裝

方法一:

解壓之後得到vld.h, vldapi.h, vld.lib, vldmt.lib, vldmtdll.lib, dbghelp.dll等檔案。將.h檔案拷貝到visual c++的預設include目錄下,將.lib檔案拷貝到visual c++的預設lib目錄下,將dbghelp.dll拷貝到你的程式的執行目錄下,便安裝完成了

方法二:

解壓之後得到vld.h, vldapi.h, vld.lib, vldmt.lib, vldmtdll.lib, dbghelp.dll等檔案。將.h檔案和.lib檔案拷貝到你要檢測的工程檔案所在的目錄裡(只針對此工程),將dbghelp.dll拷貝到你的程式的執行目錄下。就完成安裝了。

四.        vld使用

在包含入口函式的.cpp檔案中包含vld.h就可以了。下面以乙個例子進行說明(源程式見附錄):

1. 加入標頭檔案:

2.      編譯:

3.      在debug方式下執行:檢視vc的輸出資訊:

記憶體洩露所在的位置

4.檢視vc輸出資訊:

"warning: visual leak detector detected meory leaks!"

5.  如果沒有記憶體洩露,此輸出的資訊為:

"no memory leaks detected"

五.        附錄

1.測試用檔案

#include 

"vld.h"

#include 

"iostream.h"

#include 

"stdio.h"

#include 

"stdlib.h"

#include 

"string.h"

void

function1(

char*p

)

intfunction2(

void)

void

function3(

void)

intmain(

void)

vld 記憶體洩露檢測工具vld的實現

初識visual leak detector 靈活自由是c c 語言的一大特色,而這也為c c 程式設計師出了乙個難題。當程式越來越複雜時,記憶體的管理也會變得越加複雜,稍有不慎就會出現記憶體問題。記憶體洩漏是最常見的記憶體問題之一。記憶體洩漏如果不是很嚴重,在短時間內對程式不會有太大的影響,這也使...

Visual C 記憶體洩露檢測工具(VLD)

c c 程式越複雜,記憶體的管理顯得越重要,稍有不慎就會出現洩漏。如果記憶體洩漏不是很嚴重,在短時間內對程式不會有太大影響,這也使得記憶體洩漏問題有很強的隱蔽性,不易被發現。然而不管記憶體洩漏多麼輕微,當程式長時間執行時,其破壞力是驚人的 從效能下降到記憶體耗盡,甚至會影響其他程式的正常執行。更多參...

isual C 記憶體洩露檢測 VLD工具使用說明

一 vld工具概述 visual leak detector vld 是一款用於 visual c 的免費的記憶體洩露檢測工具。他的特點有 可以得到記憶體洩漏點的呼叫堆疊,如果可以的話,還可以得到其所在檔案及行號 可以得到洩露記憶體的完整資料 可以設定記憶體洩露報告的級別 並且是開源免費的。二 vl...