上个项目终于结案了,这几日我做了一些项目总结,里面有关于Antenna的部分。虽然在项目中,我们用到的Antenna预编译的功能较少,只有一些宏定义与条件编译等简单功能,但其实Antenna的预编译功能实在是很好很强大。查阅了相关资料后,我对Antenna预编译的语法和功能做了如下的总结:
² 文件编译(必须加在每个文件的首行;条件满足的时候将编译此文件,否则将不编译)
1. 有宏定义才编译
// #condition RELEASED
2. 满足条件才编译
// #condition SIZE=0
² 宏定义 / 宏取消
1. 定义宏:
// #define WFT
2. 定义宏并赋值
// #define USER=WIND
3. 取消宏
// #undefine WFT
² 宏判断
1. 如果有宏定义
// #ifdef DEBUG
…
// #endif
2. 如果没有宏定义
// #ifndef DEBUG
…
// #endif
3. 判断多个宏定义
// #ifdef DEBUG
…
// #elifdef DEBUG1
…
// #elifndef DEBUG2
…
// #endif
² 条件判断
1. If-else语句
// #if SCREEN_SIZE == 100
…
// #else
…
// #endif
² 多条件判断
// #if SCREEN_SIZE <100
…
// #elif SCREEN_SIZE < 200
…
// #endif
² 逻辑判断
// #if DEBUG & SCREEN_SIZE < 100
…
// #endif
// #if DEBUG | RELEASED
…
// #endif
// #if !( DEBUG & RELEASED)
…
// #endif
² 外部传值
Int screenSize = 0;
// #ifdef SCREEN_SIZE
// #expand screenSize = %SCREEN_SIZE%;
// #endif
注意:如果screenSize为String对象,则外部参数需要加双引号,如”%SCREEN_SIZE%”。
备注:如果大家对Antenna还有什么疑问的话,请给我留言吧,我会及时解答的。