我正在尝试使用嵌套容器创建一个二维数组。我想打印它的成员。谁能帮帮我。我是 STL 的新手。 提前致谢。
typedef vector<int> v;
vector<v>v1;
v1.push_back(v(45,67));
v1.push_back(v(36,89));
v1.push_back(v(27,81));
v1.push_back(v(18,78));
最佳答案
你打印这样的元素:
for(size_t i = 0, mi = v1.size(); i < mi; i++)
{
for(size_t j = 0, mj = v1[i].size(); j < mj; j++)
cout << v1[i][j] << ' ';
cout << '\n';
}
然后您会看到您实际上创建了一个包含以下内容的数组:
{67,67,67,...,67}, // 45 times
{89,89,89,...,89}, // 36 times
{81,81,81,...,81}, // 27 times
{78,78,78,...,78}, // 18 times
可能不是您所期望的。
关于c++ - 访问嵌套的容器成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4496633/