Swift编程语言的语法
问题描述:
当我试图实现协议之一时,我遇到以下语法。Swift编程语言的语法
optional public func mailComposeController(controller: MFMailComposeViewController, didFinishWithResult result: MFMailComposeResult, error: NSError?)
任何人都可以解释“didFinishWithResult”的含义吗?这是一个争论吗?如果不是什么?
答
didFinishWithResult
是外部参数名称。 result
是内部的。所以,当你调用这个方法的时候,就会使用外部的方法,并且在方法中使用内部的方法。
答
在目标C的方法被定义和参数名称如下:
- (void)mailComposeController:(MFMailComposeViewController *)controller
didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
当翻译成迅速可以声明外部和内部参数
功能参数有两个外部参数名称和本地参数名称。外部参数名称用于标记传递给函数调用的参数。在该函数的实现中使用本地参数名称。
默认情况下,第一个参数省略其外部名称,第二个和后续参数将其本地名称用作其外部名称。所有参数必须具有唯一的本地名称。尽管多个参数可能具有相同的外部名称,但唯一的外部名称有助于使代码更具可读性。
你它支持本地参数名称前写的外部参数的名称,用空格分隔:
func someFunction(externalParameterName localParameterName: Int) {
// function body goes here, and can use localParameterName
// to refer to the argument value for that parameter
}
这可以让你有_one_名字是有道理的函数的调用者,以及在实现函数时有意义的另一个名称。 – gnasher729