swift - Swift 中的尾随闭包语法是什么?

标签 swift

swift documentation on closures状态:

Swift’s closure expressions have a clean, clear style, with optimizations that encourage brief, clutter-free syntax in common scenarios. These optimizations include:

  • Inferring parameter and return value types from context
  • Implicit returns from single-expression closures
  • Shorthand argument names
  • Trailing closure syntax


Swift 闭包的“尾随闭包语法”究竟是什么?

最佳答案

尾随闭包写在函数调用的括号之后,即使它仍然是函数的参数。当您使用尾随闭包语法时,您不会将闭包的参数标签作为函数调用的一部分编写。

func doSomething(number:Int, onSuccess closure:(Int)->Void) {

    closure(number * number * number)

}

doSomething(number: 100) { (numberCube) in

    print(numberCube) // prints  1000000

}

函数调用中没有参数标签 onSuccess。即使闭包包含在函数参数列表中,swift 也会将其从参数块中取出,以使代码更具可读性。

关于swift - Swift 中的尾随闭包语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36762145/

相关文章:

ios - 单击时更改图像颜色

ios - "Return"关键字对于具有返回值的 swift 函数是必需的吗

swift - 无法实例化 AVPlayerViewController 错误

ios - UIView center 属性给出了意想不到的结果

ios - swift: fatal error :在展开可选值 (lldb) 时意外发现 nil,线程 1

java - 我可以在 Java 的 lambda 中省略参数名称吗

ios - com.apple.product-type.bundle.ui-testing,但是 'iphonesimulator' 平台没有这样的产品类型

ios - 如何检查UIView是否为空

UITableViewCell 的 iOS 商店选择?

ios - 如何删除 UIButton 和 UIView 上的特定边框?