iOS中块(Objective-C)和闭包(Swift)之间的区别
在教程中,他们写到在功能上是相同的,即使闭包比阻塞更容易,并且避免了块和内存管理的复杂性,我看过很多教程,但是除了这些,我没有理解swift的“
closure”和Objective-C“块”。
回答:
摘录自:Apple Inc.“将Swift与Cocoa和Objective-C结合使用。” iBooks:
“ Swift闭包和Objective-C块是兼容的,因此您可以将Swift闭包传递给需要块的Objective-
C方法。Swift闭包和函数具有相同的类型,因此您甚至可以传递Swift函数的名称。
闭包与块具有相似的捕获语义,但是在一个关键方面有所不同:变量是可变的,而不是复制的。换句话说,Objective-
C中__block的行为是Swift中变量的默认行为。”
以上是 iOS中块(Objective-C)和闭包(Swift)之间的区别 的全部内容, 来源链接: utcz.com/qa/417191.html