WINDOWS下内存泄漏检测工具VLD(Visual Leak Detector)的使用
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;
}
报告如下:
————————————————
版权声明:本文为CSDN博主「xupeng1644」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xp178171640/article/details/80828530
本文介绍了如何在Windows环境下利用Visual Leak Detector (VLD)工具进行内存泄漏检测。首先,通过链接提供的地址下载并安装VLD,安装过程会自动配置VS的附加目录。在使用时,只需在main函数所在CPP文件中包含`<vld.h>`,运行程序后退出,VLD会在输出窗口生成检测报告。注意,`#include stdafx.h`在前则`#include <vld.h>`需在其后,并且VLD仅在Debug模式下有效。若要将日志保存到文件,需将vld.ini复制到可执行文件目录并修改相应设置。通过两个测试代码示例,展示了VLD如何报告内存泄漏情况。

1548

被折叠的 条评论
为什么被折叠?



