我代表陣列的集合如下的一維集合:迭代陣列
std::vector<int> v = {3, 0, 1, 2, 1, 3, 1, 4, 2, 5, 6 };
此數組代表4個陣列是{0,1,2}
,{3}
,{4}
,和{5,6}
的集合。因此,v
首先包含數組的大小,然後是數組內容。
我想遍歷數組,即遍歷每個數組的每個元素並以某種方式處理它們。如果這是說向量的載體,人們可以簡單地做:
std::vector<std::vector<int> > v;
v.emplace_back(std::vector<int>({ 0, 1, 2 }));
v.emplace_back(std::vector<int>({ 3 }));
v.emplace_back(std::vector<int>({ 4 }));
v.emplace_back(std::vector<int>({ 5, 6 }));
for (std::size_t i = 0; i < v.size(); ++i)
{
for (std::size_t j = 0; j < v[i].size(); ++j)
{
std::cout << v[i][j] << " ";
}
std::cout << "\n";
}
但是我怎麼實現與方案相同的第一個描述?我覺得自己太想了,而且我只能想出一些太複雜的方法。有一些簡潔的解決方案嗎?