// deque_Test.cpp : 定义控制台应用程序的入口点。
//双端队列,可在头尾进行操作
#include "stdafx.h"
#include <stdlib.h>
#include <deque>//双端队列所需头文件
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"-----------------deque test!----------------------"<<endl;
deque<char*> Vdeque;
Vdeque.push_back("我");
Vdeque.push_back("是");
Vdeque.push_back("中");
Vdeque.push_back("国");
Vdeque.push_back("人");
Vdeque.push_front("说:");
Vdeque.push_front("策");
Vdeque.push_front("天");
for (int i=0;i<Vdeque.size();i++)
{
cout<<Vdeque[i]<<" ";
}
cout<<endl<<endl;
cout<<"-----------------after reset the front and back-------------------------!"<<endl;
Vdeque.back()="!";
Vdeque.front()="说明:";
for (int i=0;i<Vdeque.size();i++)
{
cout<<Vdeque[i]<<" ";
}
cout<<endl<<endl;
cout<<"------------------after pop front and pop back--------------------------------"<<endl;
Vdeque.pop_back();
Vdeque.pop_front();
for (int i=0;i<Vdeque.size();i++)
{
cout<<Vdeque[i]<<" ";
}
cout<<endl<<endl;
cout<<"---------------after insert sth--------------------------"<<endl;
char *strWelcome=new char[20];
strWelcome="welcome to china";
Vdeque.insert(Vdeque.begin()+2,strWelcome);
for (int i=0;i<Vdeque.size();i++)
{
cout<<Vdeque[i]<<" ";
}
cout<<endl<<endl;
cout<<"------------after erase sth---------------------------"<<endl;
Vdeque.erase(Vdeque.begin()+2);
for (int i=0;i<Vdeque.size();i++)
{
cout<<Vdeque[i]<<" ";
}
cout<<endl<<endl;
system("pause");
return 0;
}