VS2017内存泄露检测工具VLD
下载VLD
首先,在官网下载VLD,下载地址为:https://kinddragon.github.io/vld/
官网上最后发布版本为v2.5.1,下载后可以直接安装;也可以从官网下载源码,自己编译。
这里选择的是用发布版本直接安装,本文记安装路径为:VLD_Path。
配置VLD
打开VS2017,创建一个新工程,在资源管理器中项目右键,点击属性,进入项目属性页进行配置,用这种方法配置只能在本项目中使用VLD。若想一劳永逸,使所有项目都能使用VLD,则需要从属性管理器中进入“Microsoft.Cpp.x64.user”属性页(64位)或者“Microsoft.Cpp.Win32.user”属性页(32位)。本文从项目属性页对其进行配置。
设置 配置属性->VC++目录->包含目录:VLD_Path\include
设置 配置属性->VC++目录->库目录:VLD_Path\lib
因为官网上的安装包目前支持的最高版本为VS2015,在VS2017默认配置下使用可以检测到内存泄露,但无法显示行号,如下图所示。
若要解决该问题,则需进行以下设置。
配置属性->链接器->所有选项->生成调试信息 选择“生成经过优化以共享和发布的调试信息(/DEBUG:FULL)”,然后点击确定。
配置完成后,在程序中添加头文件#include"vld.h",然后按F5调试模式下运行,会在输出窗口显示出带有行号的内存泄漏信息,双击行数即可在程序中自动定位。