Swift UI 22 简说宏定义

1:Swift中没有了#Define这种宏定义了,我们可以通过以下几种方式进行类似于宏定义的方式进行使用
2:Swift的宏定义在本质上并不应该称之为宏定义, 只是为了方便大家的理解, 实质上是一些全局常量和函数, 希望大家不要混淆

1:使用let声明常量来替代一些简单的宏定义

这种用let替代#define只适用于一般的常量宏,如果是表达式或者其他复杂的宏,使用下面的方式

 let width = UIScreen.mainScreen().bounds.size.width
 let height = UIScreen.mainScreen().bounds.size.height

2: 对于一些复杂的宏定义,我们可以通过函数返回值的方式进行解决

func RGBColor(r:Int, g:Int, b:Int) -> UIColor{
        
        let red = CGFloat(r) / 255
        let green = CGFloat(g) / 255
        let blue = CGFloat(b) / 255
        
        return UIColor.init(red: red, green: green, blue: blue, alpha: 1)
    }

这样我们在整个工程中都能使用,当然大家最好定义个OC或Swift文件专门承载宏定义

(1)OC中在使用前必须导入.h文件


Swift UI 22 简说宏定义_第1张图片
![OC.png](http://upload-images.jianshu.io/upload_images/2670926-f3d7b8de97bbc66e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

(2)生成的会是一个.swift空文件, 默认应该会是Foundation框架, 自己修改为UIKit即可

Swift UI 22 简说宏定义_第2张图片
Swift宏定义文件.png
Swift UI 22 简说宏定义_第3张图片
Swift.png

例如:

self.view.backgroundColor = RGBColor(221, g: 193, b: 153)

最后

具体的用法还需要大家在工作中,自己封装,自己发现。
大家有什么好的方法,可以相互交流下,谢谢

你可能感兴趣的:(Swift UI 22 简说宏定义)