我正在寻找Valgrind来帮助提高我的C编码/调试,当我发现它只适用于Linux时——我没有其他需要或兴趣将我的操作系统转移到Linux,所以我想知道是否有同样好的Windows程序。


当前回答

你可以参考《Game Programming Gems 8》中的文章《游戏内内存分析器的设计与实现》。

它展示了如何实现一个低开销的半侵入式实时内存分析器,源代码在CD-ROM中提供。

其他回答

如果你使用Borland/CodeGear/Embarcadero c++ Builder进行开发,你可以使用CodeGuard。

也许CodeSnitch是你想要的?http://www.entrek.com/codesnitch.html

用户模式转储堆(UMDH)实用程序与操作系统一起工作,分析特定进程的Windows堆分配。这是微软提供的一个很好的免费工具。这是一个小教程“如何使用Umdh.exe来查找内存泄漏”。

我曾经有机会使用Compuware DevPartner Studio,那真的很好,但它相当昂贵。 一个更便宜的解决方案可以是GlowCode,我刚刚与一个5。X版本,尽管在附加到我需要调试的进程时出现了一些问题,但它运行得很好。

Viusual Studio本身可以帮助检测内存泄漏。参见Microsoft Visual c++技巧->“内存泄漏”部分。 参见《SO》中的这篇文章

虽然真正的跟踪只能与Visual Studio的团队版。