gpt4 book ai didi

swift - 在 Swift 中初始化二维用户定义数组

转载 作者:搜寻专家 更新时间:2023-11-01 06:11:50 26 4
gpt4 key购买 nike

我是 Swift 的新手,这个问题让我很困惑。我正在尝试创建一个二维 map 。在我的 Map 类的初始化中,我需要创建另一个名为 Grid 的类的二维数组。

这是我现在拥有的:

class Map: NSObject {
var squares: [[Grid]]
let MAXROWS = 200
let MAXCOLUMNS = 200

override init(){
for r in 0...MAXROWS{
for c in 0...MAXCOLUMNS{
squares[r][c].append
}
}
}

在追加函数中,它产生了一个错误:

value of type "Grid" has no member "append"

如何正确执行此操作?

最佳答案

或者如果你不喜欢原始循环:

override init(){
self.squares = Array<[Grid]>(
repeating: Array<Grid>(
repeating: Grid(),
count: MAXCOLUMNS),
count: MAXROWS
)
}

编辑:与 Alain T metnioned 一样,这仅在 Grid 是结构时有效,否则将在整个二维数组中使用相同的实例。这是因为类是通过引用传递的,在这种情况下,每次都会使用相同的引用。

关于swift - 在 Swift 中初始化二维用户定义数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54636466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com