有谁知道在 Linux 环境下有一个很好的 C++ 段错误调试器吗?如果调试器能够跟踪导致错误的函数就足够了。
最佳答案
还要考虑一些确实需要您更改代码的技术:
通过 valgrind 内存检查工具运行您的应用。当您访问错误的地址(例如释放指针,未初始化)时可能会捕获错误 - 请参阅 here .
如果您广泛使用 STL/boost,请考虑使用 -D_GLIBCXX_DEBUG 和 -D_GLIBCXX_DEBUG_PEDANTIC 进行编译(参见 here)。这可以捕获诸如使用无效迭代器、访问 vector 中不正确的索引等错误。
tcmalloc(来自 google per tool)。链接启用调试的版本时,可能会发现与内存相关的问题
甚至 more ...
关于c++什么是段错误的好调试器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6394039/