摘录自:Apple Inc.“将Swift与Cocoa和Objective-C结合使用。” iBooks:
“ Swift闭包和Objective-C块是兼容的,因此您可以将Swift闭包传递给需要块的Objective- C方法。Swift闭包和函数具有相同的类型,因此您甚至可以传递Swift函数的名称。
闭包与块具有相似的捕获语义,但是在一个关键方面有所不同:变量是可变的,而不是复制的。换句话说,Objective- C中__block的行为是Swift中变量的默认行为。”
iOS中块(Objective-C)和闭包(Swift)之间的区别
摘录自:Apple Inc.“将Swift与Cocoa和Objective-C结合使用。” iBooks:
“ Swift闭包和Objective-C块是兼容的,因此您可以将Swift闭包传递给需要块的Objective- C方法。Swift闭包和函数具有相同的类型,因此您甚至可以传递Swift函数的名称。
闭包与块具有相似的捕获语义,但是在一个关键方面有所不同:变量是可变的,而不是复制的。换句话说,Objective- C中__block的行为是Swift中变量的默认行为。”