使C ++调试版本的行为类似于VS2010中的版本构建

时间:2013-05-11 15:26:05

标签: c++ visual-studio-2010 release-mode

我有一个过程,直到今天我一直在调试模式下构建,它的行为就像我预期的那样。如果抛出异常,我调试它并修复问题 现在我在发布模式下构建了我的进程,但它抛出了在调试模式下运行它时没有的异常 我想调试它,但在调试模式下编译器保护内存和其他东西,我无法捕获这些execptions。

有没有办法让调试模式抛出发布版本会抛出的异常?

2 个答案:

答案 0 :(得分:0)

在黑暗中拍摄的东西,但调试和发布版本之间的标准差异是调试版本中的所有变量都被初始化,无论您是否在代码中实际执行此操作,而在发布模式中它们不是。因此,请仔细检查您的代码并确保在声明点初始化每个变量,看看是否能解决问题。

答案 1 :(得分:0)

嗯......我想我明白了 我的进程加载其他DLL作为插件 我注意到当我在发布模式下运行我的进程并加载以调试模式构建的DLL时 - 或者相反 - 它崩溃了。

我想从插件导入的某些对象在发布或调试模式下具有不同的布局或大小。

如果有人能对此做出更好的解释,那就太棒了:)。