c++什么是段错误的好调试器?

标签 c++ debugging

有谁知道在 Linux 环境下有一个很好的 C++ 段错误调试器吗?如果调试器能够跟踪导致错误的函数就足够了。

最佳答案

还要考虑一些确实需要您更改代码的技术:

  1. 通过 valgrind 内存检查工具运行您的应用。当您访问错误的地址(例如释放指针,未初始化)时可能会捕获错误 - 请参阅 here .

  2. 如果您广泛使用 STL/boost,请考虑使用 -D_GLIBCXX_DEBUG 和 -D_GLIBCXX_DEBUG_PEDANTIC 进行编译(参见 here)。这可以捕获诸如使用无效迭代器、访问 vector 中不正确的索引等错误。

  3. tcmalloc(来自 google per tool)。链接启用调试的版本时,可能会发现与内存相关的问题

  4. 甚至 more ...

关于c++什么是段错误的好调试器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6394039/

相关文章:

c++ - 为什么 std::vector::resize(n, src) 按值传递?

c++ - 指针问题

javascript - 提交表单正在重置城市 dropDown javascript

c++ - vector 数组是完全连续的内存吗?

c++ - 设置文件指针位置

c++ - 试图重载运算符++,不能调用没有对象的成员函数

java - android 测试 HttpPost 字符串以进行调试

c++ - 如何打印出 Visual Studio 跟踪点中的寄存器偏移量?

.net - 如何防止预期的异常破坏调试测试运行?

c - 如何打印出结构体的成员,奇怪的错误?