什么调试器可以检查 C++ 代码是不是存在内存泄漏? [复制]

Posted

技术标签:

【中文标题】什么调试器可以检查 C++ 代码是不是存在内存泄漏? [复制]【英文标题】:What debugger can check c++ code for memory leaks? [duplicate]什么调试器可以检查 C++ 代码是否存在内存泄漏? [复制] 【发布时间】:2011-10-05 09:23:02 【问题描述】:

可能重复:how to find memory leak in c++ code/project

我想问我应该安装什么调试器来检查内存泄漏?我有一个 .a 包含一个 .cpp 和一个 .h 。我使用了很多指针和引用。现在我想测试一下内存泄漏。

我听说过 lint。这存在吗? 谢了

【问题讨论】:

你的意思是memory leaks?另外,这是我检查是否存在的方法:是否有***文章? Google 是否提供了多个相关结果? lint 适用于 C。对于 C++,您可以使用 cppcheck 查找一些错误:en.wikipedia.org/wiki/Cppcheck 【参考方案1】:

您需要像 Valgrind 这样的内存调试、内存泄漏检测和分析工具。 调试器通常不会这样做。

【讨论】:

我想要一个程序,我可以在其中 umload 我的代码并对其进行调试...为了查看内存不足,未删除的指针。我想要一些可以告诉我我没有删除的东西,我应该这样做。谢谢 正如他所说,valgrind 做到了。 这正是Als给你的答案。 这叫内存泄漏,不是缺少 @skywak:我更新了答案中的链接,现在它会将您带到 Valgrind-Ubuntu,由于您标记了 Ubuntu,我相信您需要适用于 Ubuntu 平台的工具。【参考方案2】:

它被称为Memory leak。您可以使用valgrind(仅限linux)处理内存泄漏和无效读/写。

您也可以使用splint,即static code analysis 工具。但它用于在代码中查找另一类错误。

【讨论】:

以上是关于什么调试器可以检查 C++ 代码是不是存在内存泄漏? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何自己检查NodeJS的代码是不是存在内存泄漏

在 VS C++ 6.0 中,哪些调试工具可以很好地找到内存泄漏的位置?

如何检查 C++ 代码中的内存泄漏。有没有检查内存泄漏的免费工具[重复]

怎样发现内存泄露?

valgrind--CPP程序内存泄露检查工具

内存泄漏检测