У меня есть проект, над которым я работаю. Недавно я переключил его в режим релиза с полной оптимизацией, чтобы понять, как некоторые вещи будут работать в режиме отладки. При этом, однако, я заметил, что было несколько нарушений. В моем конкретном случае у меня есть спрайт, альфа-значение которого отличается (более прозрачно) в режиме выпуска, чем в режиме отладки.
Чтобы проверить свои выводы, я сделал копию параметров сборки режима выпуска, но отключил оптимизацию (убедившись, что DEBUG и другие связанные параметры препроцессора были удалены), и он работал правильно. Что-то в процессе оптимизации изменяет поведение моей системы. Это, вероятно, потому, что есть переменные, которые я не инициализирую в своих классах где-то.
У меня вопрос: есть ли альтернатива, кроме ручной обработки моего кода, для обеспечения правильной инициализации? Я проверил всплывающие предупреждения, но все они связаны с преобразованием int в float / float в int и возможной потерей данных и квалификаторов enum, и ни одно из них не имеет отношения к альфе на моем спрайте.
Я использую Visual Studio 2010, если это имеет значение.