Swift`in`关键字的含义?

我正在尝试从parse.com实现一些代码,并且in在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.

}

}

该文档没有对此进行说明。我知道in关键字用于for循环。

有人确认吗?

回答:

在命名函数中,我们声明参数并在func声明行中返回类型。

func say(s:String)->() {

// body

}

在匿名函数中,没有func声明行-它是匿名的!因此,我们in在正文的开头使用一行来代替。

{

(s:String)->() in

// body

}

(这是匿名函数的 完整 形式。但是Swift拥有一系列规则,允许in在某些情况下省略返回类型,参数类型,甚至参数名称和整行。)

以上是 Swift`in`关键字的含义? 的全部内容, 来源链接: utcz.com/qa/402139.html

回到顶部