设为首页 加入收藏

TOP

【Visual Leak Detector】源码文件概览(一)
2023-07-23 13:32:41 】 浏览:110
Tags:Visual Leak Detector 文件概

说明

使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。本篇对 VLD 源码包中的各文件用途做个概述。同系列文章目录可见 《内存泄漏检测工具》目录

目录


1. 整体概览

vld2.5.1 版本为例,下载源码 后,根目录下一共 5 个文件夹:.teamcitylibmfc_detectsetupsrc。还有 12 个文件:.editorconfig.gitignore.mailmapappveyor.ymlAUTHORS.txtchange_toolset.ps1CHANGES.txtCOPYING.txtREADME.mdvld.inivld_vs14.slnvld_vs14_wo_mfc.sln

Oh Shit!-图片走丢了-打个广告-欢迎来博客园关注“木三百川”

2. 文件夹 .teamcity

该文件夹的目录结构如下:

vld-master\.teamcity
└─Vld
    │  project-config.xml
    │
    ├─buildTypes
    │      Vld_CompileAll.xml
    │      Vld_DebugCrtDllWin32.xml
    │
    ├─pluginData
    │      plugin-settings.xml
    │
    └─vcsRoots
            Vld_HttpsGithubComKindDragonVldGitRefsHeadsMaster.xml

里面全是 xml 文件,是 teamcity 持续集成工具的配置文件,用于 VLD 项目源码的集成管理,关于该工具的介绍,可访问其官网:Jetbrains-teamcity

3 文件夹 lib

该文件夹下有三个子文件夹:cppformatdbghelpgtest

Oh Shit!-图片走丢了-打个广告-欢迎来博客园关注“木三百川”

3.1 文件夹 cppformat(生成 libformat)

该文件夹的目录结构如下:

vld-master\lib\cppformat
    ChangeLog.rst
    format.cc
    format.h
    format.vcxproj
    format.vcxproj.filters
    LICENSE.rst
    posix.cc
    posix.h

cppformat 是一个开源的 C++ 格式化库,仓库地址为 Github-fmtlib,在 VLD 中被用来格式化输出堆栈信息,详见 源码 callstack.cpp 第 224~275 行

3.2 文件夹 dbghelp

该文件夹的目录结构如下:

vld-master\lib\dbghelp
├─include
│      DbgHelp.h
│
└─lib
    ├─Win32
    │      DbgHelp.Lib
    │
    └─x64
            DbgHelp.Lib

dbghelpWindows 系统下的调试跟踪库,相关信息可见 关于 DbgHelp,在 VLD 中被用来获取堆栈信息,详见源码中 callstack.cppvld.cppvld_hooks.cpp 等文件。

3.3 文件夹 gtest(生成 libgtest)

该文件夹的目录结构如下:

vld-master\lib\gtest
│  CHANGES
│  CMakeLists.txt
│  configure
│  configure.ac
│  CONTRIBUTORS
│  LICENSE
│  Makefile.am
│  Makefile.in
│  README
│
├─include
│  └─gtest
│      │  gtest-death-test.h
│      │  gtest-message.h
│      │  gtest-param-test.h
│      │  gtest-param-test.h.pump
│      │  gtest-printers.h
│      │  gtest-spi.h
│      │  gtest-test-part.h
│      │  gtest-typed-test.h
│      │  gtest.h
│      │  gtest_pred_impl.h
│      │  gtest_prod.h
│      │
│      └─internal
│              gtest-death-test-internal.h
│              gtest-filepath.h
│              gtest-internal.h
│              gtest-linked_ptr.h
│              gtest-param-util-generated.h
│              gtest-param-util-generated.h.pump
│              gtest-param-util.h
│              gtest-port.h
│              gtest-string.h
│              gtest-tuple.h
│              gtest-tuple.h.pump
│              gtest-type-util.h
│              gtest-type-util.h.pump
│
├─msvc
│      gtest-md.sln
│      gtest.sln
│      gtest.vcxproj
│      gtest.vcxproj.filters
│      gtest_main.vcxproj
│      gtest_main.vcxproj.filters
│      gtest_prod_test.vcxproj
│      gtest_prod_test.vcxproj.filters
│      gtest_unittes
首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇【Qt6】QWindow类可以做什么 下一篇【Visual Leak Detector】源码下载

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目