说明

使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇介绍使用 VLD 时的注意事项。同系列文章目录可见 《内存泄漏检测工具》目录

目录

  • 说明
  • 1. 官网文档
  • 2. 注意事项

1. 官网文档

可以在 Using-Visual-Leak-Detector 官方文档里看到如何使用 VLD。

2. 注意事项

v2.5.1 版本为例,使用时有以下几点需注意。

  • 只要在项目的其中一个文件中 #include "vld.h" 就够了,这个文件可以是 main 函数所在文件,也可以是其他依赖源码所在文件。多个文件包含其实也没什么影响,但可能不便于后期的代码维护。
  • 一般情况下,只要确保头文件 vld.h 是在预编译头文件(最典型的比如 stdafx.h)之后包含即可,相对于其他头文件来说,include 的顺序没什么影响。但当 stdafx.h 文件中有 #include 时,就需将 #include "vld.h" 放在 stdafx.h 文件里面,且要放在 #include 的前面,不然泄漏检测功能无法正常使用。
  • 如果要检测某个 DLL 动态链接库是否有内存泄露,最好的方法是在该 DLL 的源代码里面包含 vld.h 后重新打包,然后使用新生成的 DLL 库。另一种方法是修改配置文件 vld.ini 文件中的配置项 ForceIncludeModules,将要检测的 DLL 库名称写在等号右边,具体操作可见本人另一篇博客 配置项 ForceIncludeModules,但根据配置文件中的相关注释,ForceIncludeModules 功能开启后程序有崩溃的风险,因此第二种方法需慎用。

本文作者:木三百川

本文链接:https://www.cnblogs.com/young520/p/17307044.html

版权声明:本文系博主原创文章,著作权归作者所有。商业转载请联系作者获得授权,非商业转载请附上出处链接。遵循 署名-非商业性使用-相同方式共享 4.0 国际版 (CC BY-NC-SA 4.0) 版权协议。