deque也是一种动态数组,与vector极为相似。即可使用push_back()和pop_pack()插入和删除末尾的元素,又可用下标运算符[]访问deque中的元素。
与vector不同的是,它可允许使用push_front()和pop_front()在开头插入和删除元素。
#include<iostream>
#include<stdlib.h>
#include<deque>
using namespace std;
int main()
{
deque<int> q;
q.push_back(3);
q.push_back(4);
q.push_back(5);
q.push_front(2);
q.push_front(1);
q.push_front(0);
for (size_t index = 0; index < q.size(); index++)
{
cout << "q[" << index << "]=" << q[index] << endl;
}
cout << endl;
q.pop_front();
q.pop_back();
for (auto ielement = q.begin(); ielement != q.end(); ielement++)
{
size_t offset = distance(q.begin(), ielement);
cout << "q[" << offset << "]=" << *ielement << endl;
}
system("pause");
return 0;
}