var sum1 = 0
func calculatorMath(arg1: Int, arg2: Int) -> Int {
sum1 = arg1 + arg2
return sum1
}
calculatorMath(20,50)
//问题是“缺少参数标签'arg1:arg2:'在调用中”。我需要做什么?
答案 0 :(得分:0)
我同意Martin R.如果你使用Xcode,你应该得到一个自动修复错误。调用该函数的正确方法是:
m
如果参数标签出错,请务必在调用该函数时检查它是否包含它们。
祝你好运!
Arnav
答案 1 :(得分:0)
已经建议您可以通过将调用更改为:
来解决此问题calculatorMath(arg1: 20, arg2: 50)
您也可以通过将声明更改为:
来解决此问题func calculatorMath(_ arg1: Int, _ arg2: Int) -> Int {
说明:在Swift中,每个参数都有两个名字; 调用者必须指定的可选外部名称,以及函数正文使用的本地名称(被调用者)。首先列出可选的外部名称。如果省略,则调用者必须使用本地名称,如果外部名称为_
(下划线),则调用者不得使用任何名称。
例如,您可以将您的函数声明为:
func calculatorMath(_ arg1: Int, arg2: Int) -> Int {
然后调用将不需要第一个arg上的标签,而第二个arg上的一个是:
calculatorMath(20, arg2: 50)
注意: Swift书的名称/标签名称会有所不同:
函数参数标签和参数名称
每个函数参数都有参数标签和参数名称。调用函数时使用参数标签;每个参数都写在函数调用中,其前面带有参数标签。参数名称用于函数的实现。默认情况下,参数使用其参数名称作为参数标签。
VS
参数→external-parameter-name opt local-parameter-name type-annotation
external-parameter-name→identifier
local-parameter-name→identifier
摘自:Apple Inc.“The Swift Programming Language(Swift 4.0.3)。”