@autoclosure-可以让表达式自动封装成一个闭包:输入的是一个表达式

@autoclosure

在闭包前面加上@autoclosure

func or(first:Bool,@autoclosure second:()->Bool) -> Bool {
    if first {
        return true
    }
    else {
        return second()
    }
}

再来看下调用

or(2>3,second: 4>3)

这看起来既干净又方便理解,一看就知道2>3与4>3进行或运算。

@autoclosure:Apple为了让语法看起来更漂亮些,在Swift中为我们提供了这么一个神奇的东西@autoclosure,他可以让我们的表达式自动封装成一个闭包。



作者:槛内浊物
链接:https://www.jianshu.com/p/99ade4feb8c1
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
posted @ 2018-12-29 19:15  zzfx  阅读(257)  评论(0编辑  收藏  举报