visual studio 2008解决方案发布版本运行时致命错误

时间:2012-10-09 13:08:25

标签: c++ debugging visual-studio-2008 release runtime-error

我有一个Visual Studio 2008解决方案,它包含一些项目,并使用dll和他们的标题。在调试版本中,它(解决方案)工作得非常好。在发布版本中,它成功编译,但在执行某些在dll文件中定义的函数时,它会失败。

正如我所说,解决方案在调试模式下工作正常,并且选项设置正确。试图关闭
优化,打开调试信息,它没有帮助。可能是问题的原因是什么?

1 个答案:

答案 0 :(得分:0)

我以前见过很多次。在几乎每一个案例中,当写入数组或其他数据结构时,发现该问题是一个越界错误。在其他情况下,正在使用未初始化的变量。

您的代码中存在错误。这是肯定的。当你在Debug设置下构建时,编译器会为你做很多事情来掩盖某些类型的问题。编译器将编写零初始化某些内容的代码,屏蔽未初始化的变量问题。

我首先尝试将警告级别提升到最高设置。无论如何你应该一直这样做。这通常会揭示问题。只需确保修复编译器告诉您的问题。不要用#pragma或chintzy casts掩盖它们。下一步通过代码来隔离问题。这可能既困难又耗时,但有一线希望。无论问题是什么,您重复该错误的可能性与识别和修复错误的时间和难度成反比。 :)