1、vector元素的访问:
访问可以用下标访问,只要不越界,都是有效数据
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> a;
a.push_back(10);
cout<<a[0];
return 0;
}
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> a;
a.push_back(10);
cout<<a[1];
return 0;
}
2、vector元素的赋值:
不能用下标方式赋值;
(只能)用push_back()方式。 ps:其他方式没试过。
①、push_back(),如上图所示,是正常的。
②、[ ]方式:
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> a;
a[0]=10;
cout<<a[0];
return 0;
}
3、二维向量:
vector<vector<int> > ===> 二维向量的赋值,只能push_back() 一维向量 ,即vector<int>。
而访问,也可以用[ ][ ]二维下标访问。
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<vector<int> > a;
vector<int> b;
//vector<int> c;
b.push_back(10);
b.push_back(11);
a.push_back(b);
cout<<a.front().size()<<endl;
cout<<a.size()<<endl;
cout<<a[0][0];
return 0;
}
a.front().size() 返回的是列数,即每行有多少元素。
a.size()返回的是行数,即有多少行。