Chunk** chunks[8][8];


    World () : Scene () {
        for (int xx = 0; xx < sizeof(this->chunks)-1; xx++) {
            for(int yy = 0; yy < sizeof(this->chunks[xx])-1; yy++) {

                /* Here is where I get compilation errors */
                this->chunks[xx][yy] = new Chunk(0.1f , 0.1f);
            }
        }
    }

“大小为8的无效写入”和“无法将“Chunk *”转换为“Chunk **”

Chunk构造函数采用两个浮点数(float x,float y)。
我应该如何填充这个二维数组?

(刚开始学习C++,我之前写过Java)

最佳答案

new Chunk(0.1f, 0.1f)返回什么?类型为Chunk*的指针。
this->chunks[xx][yy]的类型是什么? 2D数组中类型为Chunk**的元素。

由于类型安全,您无法将Chunk*分配给Chunk**

Chunk** chunks[8][8];更改为Chunk* chunks[8][8];

关于c++ - 为什么我不能在C++中填充此2D数组?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36299529/

10-13 08:19