В AS3 можно передать константу компилятору
-define+=CONFIG::DEBUG,true
И используйте его для условной компиляции как так:
CONFIG::DEBUG {
trace("This only gets compiled when debug is true.");
}
Я ищу что-то как #ifndef, таким образом, я могу инвертировать значение отладки и использовать его для условного добавления кода выпуска. Единственное решение, которое я нашел до сих пор, было в документации условной компиляции в Adobe и так как мои конфигурации отладки и выпуска являются взаимоисключающими, я не люблю идеи наличия и ОТЛАДКА и ВЫПУСКАЮ константы.
Кроме того, этот формат работают, но я предполагаю, что он осуществляет проверку во времени выполнения, которое не является тем, что я хочу:
if (CONFIG::DEBUG) {
//debug stuff
}
else {
//release stuff
}
Я также рассмотрел выполнение чего-то вроде этого, но это все еще не изящное решение, на которое я надеялся:
-define+=CONFIG::DEBUG,true -define+=CONFIG::RELEASE,!CONFIG::DEBUG
Заранее спасибо :)
Используйте конструкцию if / else
: мертвый код будет удален компилятором и не будет протестирован во время выполнения. У вас будет только одна версия вашего кода в вашем swf.
Если вы не уверены, воспользуйтесь декомпилятором или дампом, чтобы увидеть, что происходит на самом деле.
http://apparat.googlecode.com/files/dump.zip
...