# include <iostream>
# include <deque>
# include <algorithm>
using namespace std;
/*
deque是一个动态数组
deque与vector非常类似
deque可以在数组开头和末尾插入和删除数据, vector值可以在末尾添加
*/
int main(){
deque<int> a;
//从末尾添加两个数据
a.push_back(2);
a.push_back(3);
//从开头添加两个数据
a.push_front(1);
a.push_front(0);
for(size_t i=0;i<a.size();i++){
cout<<a[i]<<endl;
}
//删除前面的元素
a.pop_front();
//删除后面的元素
a.pop_back();
for(size_t i=0;i<a.size();i++){
cout<<a[i]<<endl;
}
//迭代器
deque<int>::iterator ite;//deque有自己的迭代器
for(ite=a.begin();ite!=a.end();ite++){//begin返回一个迭代器 迭代器就是一个指针
size_t nOffset = distance(a.begin(),ite);//返回 a.begin()与 ite的距离
cout<<*ite<<endl;
}
return 0;
}