Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
Swift 将字典传递给init方法_Swift - Fatal编程技术网

Swift 将字典传递给init方法

Swift 将字典传递给init方法,swift,Swift,我对字典的定义如下: var seats = [String: [String:Bool]]() 如何将seats的类型(即[String:[String:Bool]]())传递给类的init方法 我试过: init(initSeats : [String: [String:Bool]]()) { //code } 这不会编译并报告错误: 应为“,”分隔符 函数定义应该只包含类型,而不是类型的实例。正确的版本是: init(initSeats : [String: [String

我对字典的定义如下:

var seats = [String: [String:Bool]]()
如何将seats的类型(即
[String:[String:Bool]]())传递给类的
init
方法

我试过:

init(initSeats : [String: [String:Bool]]()) {
    //code
}  
这不会编译并报告错误:

应为“,”分隔符


函数定义应该只包含类型,而不是类型的实例。正确的版本是:

init(initSeats : [String: [String:Bool]]) {
    //code
}  

类型为
[String:[String:Bool]]

所以你会用

init(initSeats: [String: [String:Bool]]) {
   // your init code
}
但是,如果你打算大量使用它,最好是让它更容易打字和记忆

typealias SeatType = [String: [String:Bool]]

var seats = SeatType()

init(initSeats : SeatType) {
    //code
}
“不起作用”不是一个充分的问题描述。请回答您的问题,并对您遇到的实际问题进行清晰、简洁的描述。