似乎我项目中的错误正在不断发展。虽然在开始时,程序崩溃的原因很容易使用调试器(它在程序崩溃后指向的行),但它现在不同了。
许多错误导致程序在完全没有与之密切相关的仲裁地点崩溃。
(我使用Visual Studio 2010)
答案 0 :(得分:2)
为内存损坏配置您的代码,memory overwrites和memory leaks。
答案 1 :(得分:2)
根本原因分析。
当你发现一个明显的错误时,不要只修复错误,修复允许它的编码风格。
答案 2 :(得分:1)
使用内存损坏检查实用程序,如gflags或调试堆。 “浮动”粉碎几乎总是来自C ++程序中损坏的内存
答案 3 :(得分:1)
如果您有任何使用原始内存和指针的代码,请将其替换为使用std :: vector及其迭代器分配的内存。它将在Release模式下编译为完全相同的快速代码,但在Debug模式下它将使用已检查的迭代器,它将尽早捕获一些错误。