创建一个2D矢量数组

时间:2010-07-04 02:17:34

标签: c++ vector 2d

我一直在尝试为游戏创建一个2D矢量数组。这是我正在做的一个例子。

struct TILE {
    int a;
    char b;
    bool c;
};

TILE temp_tile;

std::vector<TILE> temp_vec_tile;
std::vector<std::vector<TILE>> tile;


for (int x = 0; x < 10; x++) {
    for (int y = 0; y < 10; y++) {

    temp_tile.a = x;
    temp_tile.b = "a";
    temp_tile.c = false;;

    temp_vec_tile.push_back(temp_tile);
    }

    tile.push_back(temp_vec_tile);
}

// Why does this not work?
int x = tile[3][5].a;

注意:我不想为此使用Boost。

由于

1 个答案:

答案 0 :(得分:0)

每次都没有清除内部向量。可能你想要的是将内部向量声明放在第一个for循环中。