vector< vector<int> > vi;这个二维数组有哪些赋值方法?????

如题所述

第1个回答  2013-12-21
用迭代器,vector<vector<int>>::iterator i = vi.begin();然后再定义vector<int>::iterator j = i->begin();这样遍历。因为没有具体题目,所以我没法学程序,帮你写一个片段吧。 vector<vector<int>>::iterator i;vector<int>::iterator j;for(i = vi.begin(); i != vi.end(); i++){ for(j = i->begin(); j != i->end(); j++) { //do something }} 补充: 忘了和你说,要用iterator头文件。你学C++,还是要看看迭代器,用下标,不但很土,而且不安全。当然vector是支持下标的,你完全可以用vi[i][j]来遍历这个向量。 追问: 迭代器有时弄得乱乱的,下面是我今天找的vector< vector<int> > vi;vi.reserve(m);for(int i = 0; i < m; i++)vi[i].push_back(x);(0,0)(0,1)(0,2)(0,3)本回答被提问者采纳
相似回答