您的位置:首页 > 移动开发 > IOS开发

ios 开发中宏定义的三种方式及优先级

2015-12-29 21:53 441 查看
ios 开发中有三种方式可宏定义变量

1.直接在文件中用 #define ... 来定义:此方式优先级最高,当用多种方式宏定义一个变量时,这种方式为最后的值

2.在Build Settings中的Apple LLVM 7.0(或者其他版本号) - Preprocessing->Preprocessor Macros中定义:和第3种方式平级

3.用xcodebuild打包,在打包命令行中使用

xcodebuild -project
"${BUILDPROJECT}.xcodeproj" -target $BUILDPROJECT
GCC_PREPROCESSOR_DEFINITIONS='${inherited} LOGONE=1 LOGTWO=1' build
其中红色为宏定义LOGONE和LOGTWO

其中如果不加${inherited}的话,编译会报错,说是重复定义,加上了以后第3种方式宏定义的优先级就高于了2,当分别用2和3定义一个变量的时候,3定义为最后的值,但是加了以后仍然优先级低于第一种方式。

参考文章:http://stackoverflow.com/questions/15708831/setting-a-define-from-the-command-line-in-xcode-4-6
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: