Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)

简介: Visual Studio 安装检测内存工具-Visual Leak Detetctor。(适用于VS2013、VS2015、VS2017、VS2019、VS2022版本)

前言

如果你的Visual Studio版本是处于2008, 2010, 2012, 2013, 2015这些可以直接通过VS内置的插件安装方式安装。否则你只能通过官网下载进行下载。

Visual Leak Detetctor

应用环境:Windows + VC

编程语言:C/C++

使用方法:只需包含头文件vld.h,并添加提供的lib

结果输出:输出到VC的调试窗口中

设计思路: 注册_CrtSetAllocHook钩子函数,使用VC自带的CRT Debug Heap

优点:可以获得内存泄露点的调用堆栈,可以得到内存泄露的完整数据


外部安装VLD

首先你需要下载Visual Leak Detetctor,地址:官网下载

安装包

下载好,应该是这个样子的

然后点击安装,

点击下一步

这里需要勾选I accept the agreement(我同意)选项。

这里可以用默认路径也可以自己选择路径,建议路径不要有中文

下一步

下一步

点击Install,进行安装。

这里提醒让你把vs先关闭然后再点击弹框的确定按钮。

出现这个界面就是安装完成咯。


配置VLD

查看相关文件

我们现在需要去刚刚的安装路径下:


在include路径下,可以看到我们之后需要使用vld.h头文件。

在lib\win64路径下(这里需要和你实际的环境一致,32位的选择win32文件夹),可以看到我们之后需要使用vld.lib头文件。


将VLD配置到C++项目中

创建一个C++的空工程

添加如下代码,用于测试。

#include <iostream>
int main()
{
  int* a = new int(3);
  return 0;
}

截屏如下:

配置头文件

这里我们需要在左侧切换到C/C++

在右侧的Additional Include Directories中添加vld.h头文件。



配置lib库

在左侧选择Linker,然后选择Input,在右侧中的Additional Dependencies中添加D:\Program Files (x86)\Visual Leak Detector\lib\Win64\vld.lib;路径。


具体如下:

最后切记点应用保存哦。


测试Visual Leak Detetctor

这时需要我们在测试代码中添加vld.h头文件。

然后点击运行,我们就可以在控制台看到泄露的内存字节数,以及泄漏的位置。如果你想要让这个输出变得简洁化,就需要手动设置vld安装路径下的vld.ini配置文件。


目录
相关文章
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
1051 159
|
监控 Java 计算机视觉
Python图像处理中的内存泄漏问题:原因、检测与解决方案
在Python图像处理中,内存泄漏是常见问题,尤其在处理大图像时。本文探讨了内存泄漏的原因(如大图像数据、循环引用、外部库使用等),并介绍了检测工具(如memory_profiler、objgraph、tracemalloc)和解决方法(如显式释放资源、避免循环引用、选择良好内存管理的库)。通过具体代码示例,帮助开发者有效应对内存泄漏挑战。
690 1
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
374 6
|
Web App开发 JavaScript 前端开发
使用 Chrome 浏览器的内存分析工具来检测 JavaScript 中的内存泄漏
【10月更文挑战第25天】利用 Chrome 浏览器的内存分析工具,可以较为准确地检测 JavaScript 中的内存泄漏问题,并帮助我们找出潜在的泄漏点,以便采取相应的解决措施。
1794 9
|
存储 程序员 编译器
什么是内存泄漏?C++中如何检测和解决?
大家好,我是V哥。内存泄露是编程中的常见问题,可能导致程序崩溃。特别是在金三银四跳槽季,面试官常问此问题。本文将探讨内存泄露的定义、危害、检测方法及解决策略,帮助你掌握这一关键知识点。通过学习如何正确管理内存、使用智能指针和RAII原则,避免内存泄露,提升代码健壮性。同时,了解常见的内存泄露场景,如忘记释放内存、异常处理不当等,确保在面试中不被秒杀。最后,预祝大家新的一年工作顺利,涨薪多多!关注威哥爱编程,一起成为更好的程序员。
689 0
|
监控 JavaScript 前端开发
如何检测和解决 JavaScript 中内存泄漏问题
【10月更文挑战第25天】解决内存泄漏问题需要对代码有深入的理解和细致的排查。同时,不断优化和改进代码的结构和逻辑也是预防内存泄漏的重要措施。
457 6
|
Web App开发 缓存 JavaScript
如何检测和解决闭包引起的内存泄露
闭包引起的内存泄露是JavaScript开发中常见的问题。本文介绍了闭包导致内存泄露的原因,以及如何通过工具检测和代码优化来解决这些问题。
|
IDE 开发工具 C语言
Visual Studio 2017 安装及使用(新手)
Visual Studio 2017 安装及使用(新手)
2253 0
下一篇
开通oss服务