关于C++中vector<vector<int> >的使用

1 定义

vector<vector<int> > A;//正确的定义方式
vector<vector<int>> A;//c++11之前这样定义是错误的,c++11之后支持这种定义方式

codeblocks设置支持c++11:Settings->Compiler->Compiler Flags

2 插入元素

若想定义A = [[0,1,2],[3,4]],有两种方法。

(1)定义vector B分别为[0,1,2]和[3,4],然后放入vector A。

vector<vector<int> > A;

vector<int> B;
B.push_back(0);
B.push_back(1);
B.push_back(2);

A.push_back(B);

B.clear();
B.push_back(3);
B.push_back(4);

A.push_back(B);

 (2)

vector<vector<int> > A;
for(int i = 0; i < 2; ++i)  A.push_back(vector<int>());   
A[0].push_back(0);
A[0].push_back(1);
A[0].push_back(2);
A[1].push_back(3);
A[1].push_back(4);

 3 长度

//vector<vector<int> >A中的vector元素的个数
len = A.size();
//vector<vector<int> >A中第i个vector元素的长度
len = A[i].size();

4 访问某元素

  访问某元素时,方法和二维数组相同,例如:

//根据前面的插入,可知输出1。
printf("%d\n", A[0][1]);

  

posted @ 2018-07-24 18:26  Somnuspoppy  阅读(65303)  评论(0编辑  收藏  举报