Swift中宏#define的替代方案

我们在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!)
 }
}

你可能感兴趣的:(iOS)