zl程序教程

您现在的位置是:首页 >  工具

当前栏目

WINDOWS下内存泄漏检测工具VLD(Visual Leak Detector)的使用

VisualWindows内存 泄漏 检测工具 使用
2023-09-11 14:14:48 时间

VLD安装:

https://kinddragon.github.io/vld/

点击下载安装器

安装完成后,会自动将其include目录添加到VS的附加安装目录,将其静态库目录(lib目录)添加到VS的附加库目录,

无需手动添加include目录和lib目录

VLD使用:

通常在main函数所在的CPP文件中include<vld.h>即可

运行程序,退出后产生检测报告

注意事项:

1 如果有include"stdafx.h",则include <vld.h>放在其后,否则放在最前面
2 VLD只在debug版本有效
3 如果想将产生的日志保存到文件中,需要将vld.ini(VLD安装目录下)复制到可执行文件目录下,
然后作如下修改:
ReportFile =.\memory_leak_report.txt 
ReportTo = both 

检测报告:

测试代码1如下:
 

#include <vld.h>
 
int main()
{
	auto* pData1 = new int;
	auto* pData2 = new int;
	return 0;
}

报告信息:

报告中显示了有两处内存泄漏,这是在VS中的输出窗口(CTRL + ALT + O)中,双击对应行即可定位到内存泄漏处

测试代码2如下:

#include <vld.h>
 
int main()
{
	auto* pData1 = new int;
	delete pData1;
	auto* pData2 = new int;
	delete pData2;
	return 0;
}

报告如下: