我使用visual c 2008和visual c 2010构建了一个相当复杂的算法。当我在VC 2010中启用优化(特别是/ Og)编译时,该算法产生了错误的输出。
在VC 2008中构建完全相同的代码(有或没有优化)或在没有优化的VC2010中生成一个行为正确的算法。
我很难在启用优化的情况下调试代码,并且已经坚持了很长一段时间。有没有人知道不同版本的优化差异?
答案 0 :(得分:0)
这可能是编译器错误,但您应该尝试/ Wall启用所有警告并修复所有警告。还有运行时检查,如/ RTCu(未初始化的本地使用检查),您可以使用它来隔离问题。还要检查代码中的所有类型的类型,以确保它们是合法的。