vector 概念:是常见的一种容器,被称为“柔性数组”。
在vector中,front()是数组中的第一个元素,back()是数组的最后一个元素。begin()是是指向第一个元素,end()是指向back()的后一个元素
vector的对象创建,代码见下
#include <iostream>
#include <vector>
using namespace std;
void printVector(vector<int>& v) {
for (vector<int>::iterator iter = v.begin(); iter != v.end(); iter++) {
cout << *iter << endl;
}
cout << endl;
}
int main() {
// 1 默认构造函数
vector<int> v1;
printVector(v1);
// 2 初始化列表
vector<int> v2_1 = { 9, 8, 7, 6, 5 };
cout << "v2_1:";
printVector(v2_1);
vector<int> v2_2({ 9, 8, 7, 6,5 });
cout << "v2_2";
printVector(v2_2);
// 3 迭代器的方式
vector<int> v3(v2_1.begin(), v2_1.end());
cout << "v3";
printVector(v3);
// 4 全0初始化
vector<int> v4(8);
cout << "v4:";
printVector(v4);
// 5 vector<int> 变量名(a, b),代表申请a个空间,值初始化为b
vector<int> v5(8, 6);
cout << "v5:";
printVector(v5);
// 6 拷贝构造函数
vector<int> v6(v2_2);
cout << "v6:";
printVector(v6);
return 0;
}
vector的赋值操作,代码见下
#include <iostream>
#include <vector>
using namespace std;
void printVector(vector<int>& v) {
for (vector<int>::iterator iter = v.begin(); iter != v.end(); iter++) {
cout << *iter << ' ';
}
cout << endl;
}
int main() {
vector<int> v = { 9, 8, 5, 2, 1, 1 };
cout << "v:";
printVector(v);
// 1 赋值
vector<int> v1 = v;
cout << "v1:";
printVector(v1);
// 2 assign
vector<int> v2;
v2.assign(v1.begin(), v1.end());
cout << "v2:";
printVector(v2);
return 0;
// 3 初始化列表
vector<int> v3;
v3.assign({ 1, 2, 3, 4, 5, 6 });
cout << "v3:";
printVector(v3);
// 4 a个b
vector<int> v4;
v4.assign(8, 6);
cout << "v4:";
printVector(v4);
}