在OC中宏很常见,很好用. 但是到Swift中使用宏就不是那么容易了.Swift暂时还不支持大多数的预处理宏操作,但是可以支持 #if/#else/#endif
语句。
Swift中使用宏
-
在项目的Build Settings里配置Swift Compiler - Custom Flags,展开Other Swift Flags,在Debug右侧输入“-DDEBUG”。也可以“-D DEBUG”(-D是固定写法),但是不能有赋值,如:“-DDEBUG=1” 或 “-D DEBUG=1”都是无效的。
-
在项目的Build Settings里配置Apple LLVM x.x - Preprocessiong,展开Preprocessor Macros,在Debug右侧默认包含“DEBUG=1”,若没有请手动加入。
-
宏的使用在OC和Swift中是一致的
说明:第1步使Swift代码编译Debug时定义DEBUG标记,第2步使Objective-C、C、C++的LLVM预处理在Debug时定义DEBUG=1宏标.如果是纯Swift工程可以忽略第2步。
联系方式
邮箱: objc_china@163.com