包含数组(并指定为变量)的元组不起作用?

时间:2015-06-04 12:49:42

标签: ios swift

我正在尝试在swift中创建一个元组数组,其中每个元组包含一个(1)字母和(2)自定义对象数组,但是当我尝试追加它时会抛出错误'Int'不能转换为' T”。

以下是简化代码:

    var tuples : [(letter : Character , objects : [myObject])] = []
    //this works
    tuples.append(letter:"test".firstChar(), objects: [myObject(), myObject()])
    //gives error =>  'Int' is not convertable to 'T' on the append function
    var arrayOfObjects : [myObject] = []
    tuples.append(letter:"test".firstChar(), objects: arrayOfObjects)

1 个答案:

答案 0 :(得分:0)

这应该有效:

let arrayOfObjects : [myObject] = []
tuples.append(letter:"t", objects: arrayOfObjects)

如您所见,arrayOfObjects是常数。这里的问题可能源于append期望一个常量参数T,同时传递包含var的元组。 恕我直言这是使append变得有点疯狂的原因,编译器给出了更疯狂的错误描述; - )