初始化和使用结构的二维向量

Initialize and use 2d vector of structs

我正在尝试初始化具有

的二维结构向量
vector <vector <cellValue>> table;

mStringX = X;
mStringY = Y;

mLengthX = X.length();
mLengthY = Y.length();

vector<cellValue> myRow (0, mLengthY);

table.push_back(myRow);

我的结构cellValue

struct cellValue
{
    int stringLength;
    arrow direction;
};

并在我的代码中使用了几个地方

table[i, j]->stringLength = table[i - 1, j - 1]->stringLength + 1;

但是我觉得我使用的向量完全错误。我是向量的新手,有人告诉我它们类似于数组。

发现我做错了什么。当我初始化我的向量时,我需要声明是 table = vector<vector<cellValue>> (mLengthX, vector<cellValue>(mLengthY)); 并且每当我访问 table 的值时我需要做 table[i][j].stringLength 而不是 table[i, j]->stringLength