#include <vector>
//直接通过数组创建一个vector
vector<int> vecA = {1, 2, 3, 4};
//复制迭代器区间内的元素到vector中
vector<int> vecB(vecA.begin(), vecA.end());
//复制另一个数组的元素到vector中
int Array[4] = {1, 2, 3, 4};
vector<int> vecC(Array, Array+4);
//复制构造函数
vecD = vecA;
//创建一个vector,元素个数为3,且值均为6
vector<int> vecE(3, 6);
#include <vector>
vector<int> vecA;
//向量中迭代器指向元素前增加一个元素x
vecA.insert(vecA.begin()+3, x);
//删除向量中迭代器指向元素
vecA.erase(vecA.begin()+3);
//返回向量第i个元素(i=0开始)
cout<<vecA.at(i);
//设置向量中前4个元素的值为10
vecA.assign(4,10);
//向量中[first,last)中元素设置成当前向量元素
vecB.assign(vecA.begin()+3,vecA.end()-2);
List容器中大多函数和Vector容器相同,都有.begin()/.end()等,但由于链表的特殊结构,没有at函数与[ ]操作符,迭代器只能++逐一递增,但链表拥有反向迭代器:reverse_iterator。
#include <list>
list<int> li;
//头插法&尾插法
li.push_front(8);
li.push_back();
li.pop_front();
li.pop_back();
//获取、修改头尾结点
li.front() = 1;
li.back() = 3;