2

我对使用 Sun Studio 使用 dbx 调试器检测 C++ 应用程序中的内存泄漏非常感兴趣,但我认为这个调试器只显示 malloc/realloc 和 free 产生的内存泄漏;我不确定这一点,但我尝试过使用 C++ 程序,但没有发现内存泄漏。在这种情况下,我会尝试 Valgrind。如果我做错了什么(很有可能)我如何调试 C++ 应用程序?

谢谢。

4

1 回答 1

0

那么您需要确保的一些要点,首先,您跟踪的应用程序确实有任何内存泄漏。如果没有,那么探查器将不会显示任何内容。如果有泄漏并且探查器没有捕获,那么需要检查你是如何做到的. 所以 valgrind 是您可以尝试的另一个最佳选择。因此,当您说“有问题(高可能性)如何调试 C++ 应用程序?”时。你的意思是只与调试内存泄漏问题或 C++ 应用程序的一般调试有关?如果它的内存泄漏相关,那么你可以依赖 valgrind,否则你也可以查看 AIX malloc 跟踪。这是它的 URL:

http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=/com.ibm.aix.genprogc/doc/genprogc/malloc_trace_debug.htm

于 2010-08-28T12:06:26.947 回答