游戏开发 - 带有指向数组元素的指针的数组

时间:2010-09-01 22:29:52

标签: arrays pointers multidimensional-array

我目前正在为iPhone / iPod / iPad开发游戏。为了存储12列×8行的板数据,我有一个存储指向其中一个游戏项的块的数组。声明如下:

BlockData* mBoard[kNumberOfColumns][kNumberOfRows];

我还有另一个声明如下的数组:

BlockData* mCenterSquare[16];

我希望存储指向电路板上特定位置的指针,例如

mCenterSquare[0] = mBoard[4][5];

这是正确的做法吗?我想用上面的代码行完成的是mCenterSquare [0]存储指向板上位置的指针 - 第4列和第5行。我该怎么做呢?

提前致谢。

2 个答案:

答案 0 :(得分:1)

为什么不使用mCenterSquare数组来存储数据:

function BlockData* getBlockData(int row, int col) {
     return mCenterSquare[row * kNumberOfCols + col]
}

答案 1 :(得分:0)

我不禁想到这是一个棘手的问题。是的,这就是你的方式。 :)