一. 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...