vector初试化方法
1、不带参数的构造函数的初试化
//初试化size为0的vector
vector<int> v1;
2、带参数的构造函数的初试化
//初试化size,但每个元素值为默认值0
vector<int> v1(5);
//初试化size,且设置初始值
vector<int> v1(10, 1);
3、通过数组地址初试化
int a[5] = {1, 2, 3, 4, 5};
vector<int> v1(a, a + 5);
4、通过同类型的vector初试化
vector<int> v1(5, 1);
vector<int> v2(v1);
5、通过insert初试化
vector<int> a(6, 6);
vector<int> b;
b.insert(b.begin(), a.begin(), a.begin() + 3);
//insert也可以通过数组地址区间实现插入
int v1[6] = {1, 2, 3, 4, 5, 6};
b.insert(b.begin(), v1, v1 + 5);
//此外, insert还可以插入m个值为n的元素
b.insert(b.begin(), 6, 6);
6、通过copy函数赋值
vector<int> a(5,1);
int a1[5] = {2,2,2,2,2};
vector<int> b(10);
b.insert(b.begin(), 6, 6);
//将a中元素全部拷贝到b开始的位置中,注意拷贝的区间为a.begin() ~ a.end()的左闭右开的区间
copy(a.begin(), a.end(), b.begin());
//拷贝区间也可以是数组地址构成的区间
copy(a1, a1+5, b.begin() + 5);