Swift4.0如何自定义宏

在OC中宏很常见,很好用. 但是到Swift中使用宏就不是那么容易了.Swift暂时还不支持大多数的预处理宏操作,但是可以支持 #if/#else/#endif 语句。

Swift中使用宏

  1. 在项目的Build Settings里配置Swift Compiler - Custom Flags,展开Other Swift Flags,在Debug右侧输入“-DDEBUG”。也可以“-D DEBUG”(-D是固定写法),但是不能有赋值,如:“-DDEBUG=1” 或 “-D DEBUG=1”都是无效的。

  2. 在项目的Build Settings里配置Apple LLVM x.x - Preprocessiong,展开Preprocessor Macros,在Debug右侧默认包含“DEBUG=1”,若没有请手动加入。

  3. 宏的使用在OC和Swift中是一致的

说明:第1步使Swift代码编译Debug时定义DEBUG标记,第2步使Objective-C、C、C++的LLVM预处理在Debug时定义DEBUG=1宏标.如果是纯Swift工程可以忽略第2步。

联系方式

邮箱: objc_china@163.com