我们在Swift中已经没有#define这种宏定义了,那么替代方案有哪些呢?
1、let声明常量
let IS_IOS7 = (UIDevice.currentDevice().systemVersion as NSString).doubleValue >= 7.0
当然这种代替方案 只适用于一般的常量宏定义,如果想定义表达式等复杂的宏,let做不到啊!!!
2、在xxx.swift文件中创建全局func函数
// 控制台打印
func DRLog(item: Any...) {
print(item.last!)
}
在配合let,代替常量宏,作为DRLog是否打印的开关:
let kPrintLog = 1 // 控制台输出开关 1:打开 0:关闭
// 控制台打印
func DRLog(item: Any...) {
if kPrintLog == 1 {
print(item.last!)
}
}