Swift中`关键字的含义?

我试图从parse.com实现一些代码,我注意到在void之后的关键字。

我难过这是什么? 第二行你看到了Void in

 PFUser.logInWithUsernameInBackground("myname", password:"mypass") { (user: PFUser?, error: NSError?) -> Void in if user != nil { // Do stuff after successful login. } else { // The login failed. Check error to see why. } } 

文档没有logging这一点。 我知道in关键字用于for循环。

任何人确认?

在一个命名函数中,我们在func声明行中声明参数和返回types。

 func say(s:String)->() { // body } 

在匿名函数中,没有func声明行 – 它是匿名的! 所以我们在身体一开始就这样做。

 { (s:String)->() in // body } 

(这是一个匿名函数的完整forms,但是Swift有一系列的规则,允许返回types,参数types,甚至参数名称和整体in某些情况下被省略)。

你应该阅读关于Swift闭包

你也可以看看这个: 可爱的闭包语法

*

关键字引入了closures的开始。 这个关键字表示闭包的参数和返回types的定义已经完成,闭包的主体即将开始。

*

资料来源: https : //developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Closures.html