以这种方式初始化数组时:
var result = [Double](count: N, repeatedValue: 0)
和
var result = [String](count: N, repeatedValue:"")
或使用我写的类的初始化程序时:
let result = Matrix(rows: N, columns: N)
我在设备上运行它时会出现错误,说第二个参数是额外的。虽然,如果我在模拟器中运行它,它可以正常工作。令人沮丧的是,在其他地方调用类似的代码并且不会导致任何问题。我该怎么做才能解决这个问题?
更新1
我应该指出,上面的例子是完全独立的范围。
答案 0 :(得分:2)
尝试使用Int(N)
。如果N
为Int64
,它将在64位架构中运行,如模拟器,但不适用于像iPhone 4,4s,5这样的32位架构。Int
是{{1 typedef
或Int64
取决于架构。
像“第二个参数是额外的”这样的错误消息仍然具有误导性。它通常意味着你的一个参数是错误的类型。