如何识别c+中的内存泄漏+;应用 < >我有一个运行所有时间的C++应用程序(24×5),我怀疑内存泄漏。如何识别内存泄漏。有什么工具我可以用吗 < >我有一组文件,它们有命令来改变C++应用程序的状态。当我重放这些相同的文件时,我可以看到在重放的每个迭代过程中,进程占用的内存都在增加。我试过valgrind,它运行了5天多,完成了一次重复播放 valgrind--tool=memcheck--leak check=yes\ --show reachable=yes--num callers=20--track fds=yes obj

如何识别c+中的内存泄漏+;应用 < >我有一个运行所有时间的C++应用程序(24×5),我怀疑内存泄漏。如何识别内存泄漏。有什么工具我可以用吗 < >我有一组文件,它们有命令来改变C++应用程序的状态。当我重放这些相同的文件时,我可以看到在重放的每个迭代过程中,进程占用的内存都在增加。我试过valgrind,它运行了5天多,完成了一次重复播放 valgrind--tool=memcheck--leak check=yes\ --show reachable=yes--num callers=20--track fds=yes obj,c++,memory-leaks,C++,Memory Leaks,我是这个领域的新手。请给我推荐一个检查内存泄漏的好工具,或者提供一些识别内存泄漏的方法。最好的工具是。这是clang和gcc中提供的编译器功能。这里有一些有用的建议。但要注意检测泄漏,您的应用程序应该以所有可能的方式运行。Valgrind将大大降低您的应用程序的运行速度(特别是在多线程的情况下)。您可以试着监控操作系统的RAM使用情况,看看它是否在不断增加。@Clonk是的,我的RAM使用情况一直在增加。但是如何找到内存泄漏发生的位置?@MarekR我尝试添加上面提到的标志,但在编译/usr/b

我是这个领域的新手。请给我推荐一个检查内存泄漏的好工具,或者提供一些识别内存泄漏的方法。

最好的工具是。这是clang和gcc中提供的编译器功能。这里有一些有用的建议。但要注意检测泄漏,您的应用程序应该以所有可能的方式运行。Valgrind将大大降低您的应用程序的运行速度(特别是在多线程的情况下)。您可以试着监控操作系统的RAM使用情况,看看它是否在不断增加。@Clonk是的,我的RAM使用情况一直在增加。但是如何找到内存泄漏发生的位置?@MarekR我尝试添加上面提到的标志,但在编译
/usr/bin/ld:cannot find/usr/lib64/libasan.so.0.0.0 collect2:error:ld返回1退出状态
您使用什么操作系统?Linux?分配?可能您需要安装一些额外的软件包。