Swiftでの2次元配列の定義、初期化
2次元配列を使う必要があった。普通に検索して出て来る定義、初期化の方法は以下の通り。
var DataGobanBoard = [[Int]]() // 2D Array for goban
var DataGobanCheckBoard = [[Bool]]() // 2D Array for check
ところが、この状態で「DataGobanBoard[y][x] = DataGobanSpace」のように添え字でアクセスすると、「Index Out of range」でアプリが落ちる。
結論として、次のようにすれば、添え字アクセスが可能となる。
var DataGobanBoard = [[Int]](repeating: [Int](repeating: 0, count: 21), count:21) // 2D Array for goban
var DataGobanCheckBoard = [[Bool]](repeating: [Bool](repeating:false, count:21), count:21) // 2D Array for check
参考
Error: “array index out of range” in multidimensional array
How to Declare a Multidimensional Boolean array in Swift?
この投稿へのトラックバック
トラックバックはありません。
- トラックバック URL
この投稿へのコメント