我认为这是一个琐碎的问题,但是我找不到针对它的具体解决方案。我正在尝试使用push_back()函数将数组追加到向量中。这是代码:
int main()
{
std::vector<int*> matchVector;
int msmTemp[3];
msmTemp[0] = 1;
msmTemp[1] = 2;
msmTemp[2] = 3;
matchVector.push_back(msmTemp);
msmTemp[0] = 4;
msmTemp[1] = 7;
msmTemp[2] = 0;
matchVector.push_back(msmTemp);
for(auto i : matchVector)
{
for(int j = 0; j<3; j++)
{
cout<<i[j]<<", ";
}
cout<<"\n";
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我得到的输出是4,7,0的两倍。我不明白为什么我看不到先前的值1,2,3?是否因为matchVector上面定义的向量类型?我认为它只需要数组。