Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将我的应用程序转换为新的Swift-错误“调用中的额外参数”_Ios_Arrays_Swift_Dictionary - Fatal编程技术网

Ios 将我的应用程序转换为新的Swift-错误“调用中的额外参数”

Ios 将我的应用程序转换为新的Swift-错误“调用中的额外参数”,ios,arrays,swift,dictionary,Ios,Arrays,Swift,Dictionary,我最近将手表应用程序转换为Swift 4,并收到以下错误:call中的额外参数“var2”。 代码位于带有数组/字典的单例中,以下是参考代码: class foo { static let sharedInstance = foo() var currentFlag: Bool = true var a:[(var1: Int, var2:Int, var3:Bool)] = [] private init() { } func test(

我最近将手表应用程序转换为Swift 4,并收到以下错误:call中的额外参数“var2”。 代码位于带有数组/字典的单例中,以下是参考代码:

class foo {

    static let sharedInstance = foo()

    var currentFlag: Bool = true
    var a:[(var1: Int, var2:Int, var3:Bool)] = []

    private init() {
    }

    func test(v1:Int, v2:Int) {
        a.append(var1: v1, var2: v2, var3: Bool(currentFlag)) // <-- error here 
    } 
}

请检查本建议书中的Swift 4:

betas中的一些实现细节已更改,但在您的情况下,需要附加另一对括号:

func test(v1:Int, v2:Int) {
    a.append((var1: v1, var2: v2, var3: Bool(currentFlag)))
}
顺便说一下,您将currentFlag声明为Bool,因此BoolcurrentFlag有点多余:

func test(v1:Int, v2:Int) {
    a.append((var1: v1, var2: v2, var3: currentFlag))
}

我的错,我转换成Swift 3而不是4,但下面的解决方案解决了问题,谢谢。