`
hududumo
  • 浏览: 238664 次
文章分类
社区版块
存档分类
最新评论

内存泄露检测—VLD工具

 
阅读更多

一.VLD工具概述

Visual Leak Detector(VLD)是一款用于Visual C++的免费的内存泄露检测工具。他的特点有:可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其所在文件及行号;可以得到泄露内存的完整数据;可以设置内存泄露报告的级别;并且是开源免费的。

二.VLD下载

http://www.codeproject.com/tools/visualleakdetector.asp

本文后附有vld1.0的工具包,下载解包后就可使用。不过网上VLD工具已经更新了很多,可以自己去网上下载。

三.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"

voidFunction1(char*p)

{

char *pTmp = new char[255];

memset(pTmp, 0x0, 255);

strncpy(pTmp,p, 255);

//delete pTmp;

}

intFunction2(void)

{

characString[] ="this is test!";

Function1(acString);

return1;

}

voidFunction3(void)

{

Function2();

}

intmain(void)

{

cout<<"begin.............."<<endl;

Function3();

cout<<"end................"<<endl;

return1;

}

分享到:
评论

相关推荐

    QT Creator内存泄露检测VLD

    windows下Qt creator 使用 VLD 工具的方法,下载 安装 使用 用浏览器打开

    windows内存泄露检测工具之VLD

    windows内存泄露检测,VLD(Visual Leak Detector)是一款用于 Visual C++ 的免费内存泄露检测工具。内寸泄露检测神器。

    Visual Leak Detector(VLD内存泄漏检测工具)支持VS2017

    博客配套源码 VC++内存泄漏检测方法(3):Visual Leak Detector(VLD内存泄漏检测工具)支持VS2017 https://blog.csdn.net/libaineu2004/article/details/89763798

    vld2.5 C++内存泄露检测工具

    关键词:内存泄露,visual leak detector,vld VLD是一款用于VisualC++的免费内存泄漏检查工具。可以在codeproject.com网站上找到,相比其它的内存泄漏哦给你根据,他在检查内存泄漏的同事,还具有如下特点: 1) ...

    vld内存泄漏检测工具

    vld内存泄漏检测工具,一款很不错的内存泄漏检测工具。

    内存泄露检测工具VLD(Visual Leak Detector)

    VLD(Visual Leak Detector)是一款用于Visual C++的免费的内存泄露检测工具。相比较其它的内存泄露检测工具.

    vld内存泄露检测工具

    VLD是一款用于VisualC++的免费内存泄漏检查工具。可以在codeproject.com网站上找到,相比其它的内存泄漏哦给你根据,他在检查内存泄漏的同事,还具有如下特点: 1) 可以得到内存泄漏点的调用堆栈,如果可以的话,...

    内存检测工具VLD最新版本2.5.1-setup

    内存检测工具VLD最新版本,VLD2.5.1-setup,codeproject上提供的的1.0版本,内存泄漏位置定位不行。此版本定位代码内存泄漏位置好。

    vld内存泄露检测

    Visual LeakDetector(VLD)是一款用于Visual C++的免费的内存泄露检测工具。它的特点有:(1)、它是免费开源的,采用LGPL协议;(2)、它可以得到内存泄露点的调用堆栈,可以获取到所在文件及行号;(3)、它可以得到泄露...

    VLD内存泄露检测工具

    VLD内存泄露检测工具

    内存泄漏检测工具 Visual Leak Detector 2.3 (vld)

    开源的免费的内存泄漏检测工具,可用于VS2012、VS2010、VS2008、VS2005

    内存泄露检测工具源码vld

    这个内存泄漏检测器是作为 Visual C++ 内建内存泄漏检测器的一个免费替代品而被创建的。以下是 Visual Leak Detector 的一些特点,这些特点在内建检测器中都不存在: * 为每个泄露的块提供完整的堆栈跟踪,包括...

    vld(Visual Leak Detector) 内存泄漏检测库

    vld工具是VC++环境下一款小巧易用、免费开源的内存泄漏检测工具,vld可以显示导致内存泄漏的完整内存分配调用堆栈。vld的检测报告能够对每个内存泄漏点提供完整的堆栈跟踪,并且包含其源文件及行号信息。

    vld 内存泄露检测工具

    Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具。

    VLD内存泄漏检测工具使用

    VLD内存泄漏检测工具使用

    Visual Leak Detector (VLD) 内存泄露检测工具

    Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具。相比较其它的内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点: 1、 可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其...

    VLD内存泄露检测工具(源码+程序)

    VLD是一款用于VisualC++的免费内存泄漏检查工具 V2.5.1用于 VS2015 可以得到内存泄漏点的调用堆栈 及所在行数

    Visual Leak Detector(VLD)内存泄漏检测工具

    Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具。相比较其它的内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点: 1、 可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其...

    vld.rar_vld_vld内存检测_内存检测泄露工具

    内存检测泄露工具,用于检测因NEW DELETE不匹配导致的内存泄露

Global site tag (gtag.js) - Google Analytics