加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flash/Flex条件编译“else”

发布时间:2020-12-15 19:50:30 所属栏目:百科 来源:网络整理
导读:在AS3中,可以向编译器传递一个常量 -define+=CONFIG::DEBUG,true 并使用它进行条件编译,如: CONFIG::DEBUG { trace("This only gets compiled when debug is true.");} 我正在寻找类似#ifndef的东西,所以我可以否定调试的价值,并使用它有条件地添加发布
在AS3中,可以向编译器传递一个常量

-define+=CONFIG::DEBUG,true

并使用它进行条件编译,如:

CONFIG::DEBUG {
   trace("This only gets compiled when debug is true.");
}

我正在寻找类似#ifndef的东西,所以我可以否定调试的价值,并使用它有条件地添加发布代码。到目前为止,我发现的唯一的解决方案是在conditional compilation documentation在adobe和我的调试和发布配置是互斥的,我不喜欢有DEBUG和RELEASE常量的想法。

此外,这种格式工作,但我假设它运行检查在运行时,这不是我想要的:

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

http://www.swftools.org/

… …

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读