swift自动闭包与高阶函数

自动闭包(autoclosure)

自动闭包在闭包作为参数时使用,这种闭包形式就是用一句普通的表达式作为自动闭包类型的参数,替代了完整的闭包表达式,这句表达式本身代表了闭包的返回值。

例如:

func printElementWith(closure: @autoclosure () -> Int){
    print("闭包表达式可以延迟处理")
    closure()
}
    
printElementWith(closure: arr.removeFirst())

它实际上是如下通常形式的一种省略表达。

func printElementWith(closure: () -> Int){
    print("闭包表达式可以延迟处理")
    print(closure())
}
printElementWith(closure: { return arr.removeFirst() })

种一棵树最好的时间是在十年前,而后是现在。

Loading Disqus comments...
Table of Contents