最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

【Visual Leak Detector】使用注意事项

来源:博客园


【资料图】

说明

使用 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功能开启后程序有崩溃的风险,因此第二种方法需慎用。

关键词: