一、queue容器
(1)queue容器的简介
queue为队列容器,“先进先出”的容器
(2)queue对象的构造
queue<T>q;
queue<int>que Int;//存放一个int的queue容器
queue<string>queString;//存放一个string的queue容器
(3)queue容器的push()与pop()方法
queue.push(elem);//往队尾添加元素
queue.pop();//从对头移除第一个元素
queue容器没有提供迭代器,不能够遍历
#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(1);
     q.push(2);
     q.push(3);
     q.push(4);
     cout<<q.front()<<endl;
     q.pop();//删除队首元素,出队
     cout<<q.front() <<endl; 
     q.pop();
     cout<<q.front() <<endl; 
     q.pop();
     cout<<q.front() <<endl; 
     q.pop();
     return 0;
     
 } 

#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(1);
     q.push(2);
     q.push(3);
     q.push(4);
     while(q.empty() !=true)
     { 
         cout<<q.front() <<endl;
         q.pop() ;
     }
     return 0;
     
 } 

二、queue容器对象的拷贝构造与赋值
(1)queue容器对象的拷贝构造
queue(const queue&que);//拷贝构造函数
queue&operator=(const queue&que);//重载等号操作符
#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(1);
     q.push(2);
     q.push(3);
     q.push(4);
     queue <int> q1(q);
     queue <int> q2;
     q2=q1;
     while(q2.empty() !=true)
     { 
         cout<<q2.front()<<endl;
         q2.pop();
     }
     return 0;
     
 } 

(2)queue容器的数据存取
queue.back();//返回最后一个元素
queue.front();//返回第一个元素
#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(1);
     q.push(2);
     q.push(4);
     q.push(6);
     queue <int> q1(q);
     queue <int> q2;
     q2=q1;
     q2.front() =0;
     while(q2.empty() !=true)
     { 
         cout<<q2.front()<<endl;
         q2.pop();
     }
     return 0;
     
 } 

#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(1);
     q.push(2);
     q.push(4);
     q.push(6);
     queue <int> q1(q);
     queue <int> q2;
     q2=q1;
     q2.front() =0;
     q2.back() =8;
     while(q2.empty() !=true)
     { 
         cout<<q2.front()<<endl;
         q2.pop();
     }
     return 0;
     
 } 

(3)queue容器的大小
queue.empty();//判断队列是否为空
queue.size();//判断队列的大小
#include<iostream>
 #include <queue>
 using namespace std;
 int main()
 { 
     queue <int> q;
     q.push(0);
     q.push(2);
     q.push(4);
     q.push(6);
     q.push(8);
     cout<<q.size() <<endl;
     return 0;
     
 } 
