我有一个项目正在进行中。我最近把它切换到了完全优化的发布模式,只是为了了解一些事情在调试模式之外的表现。然而,在这样做的时候,我注意到有一些违规行为。在我的特殊情况下,我有一个sprite,它的alpha值在发布模式和调试模式下不同(更透明)。
为了检查我的发现,我复制了发布模式构建选项,但关闭了优化(确保删除了DEBUG和其他相关的预处理器选项),并且执行正确。优化过程中的某些内容修改了我的系统的行为。这可能是因为我的类中有一些变量没有初始化。
我的问题是,除了手动梳理我的代码之外,还有其他方法可以确保正确初始化吗?我已经检查了弹出的警告,但所有警告都与int到float/float到int的转换以及可能丢失的数据和枚举限定符有关,而且它们都与我的sprite上的alpha无关。
如果有什么不同的话,我会使用Visual Studio 2010。