Loading... ## queue容器基本概念 Queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口,queue容器允许从一端新增元素,从另一端移除元素。 ![](https://blog.fivk.cn/usr/uploads/2021/04/1897294940.png) ## queue没有迭代器 Queue所有元素的进出都必须符合”先进先出”的条件,只有queue的顶端元素,才有机会被外界取用。Queue不提供遍历功能,也不提供迭代器。 ## queue常用API **queue构造函数** ```c has-numbering queue<T> queT;//queue采用模板类实现,queue对象的默认构造形式: queue(const queue &que);//拷贝构造函数 ``` **queue存取、插入和删除操作** ```c has-numbering push(elem);//往队尾添加元素 pop();//从队头移除第一个元素 back();//返回最后一个元素 front();//返回第一个元素 ``` **queue赋值操作** ```c has-numbering queue& operator=(const queue &que);//重载等号操作符 ``` **queue大小操作** ```c has-numbering empty();//判断队列是否为空 size();//返回队列的大小 ``` ## 案例 ```C++ #include<iostream> #include<queue> #include<algorithm> using namespace std; /* queue构造函数 queue<T> queT;//queue采用模板类实现,queue对象的默认构造形式: queue(const queue &que);//拷贝构造函数 queue存取、插入和删除操作 push(elem);//往队尾添加元素 pop();//从队头移除第一个元素 back();//返回最后一个元素 front();//返回第一个元素 queue赋值操作 queue& operator=(const queue &que);//重载等号操作符 queue大小操作 empty();//判断队列是否为空 size();//返回队列的大小 */ int main() { queue<int> v; //入栈 v.push(10); v.push(14); v.push(5); v.push(8); v.push(9); v.push(3); v.push(20); while (!v.empty()) { //获取队头元素,这里还可以访问对胃back cout << v.front() << endl; cout << "栈的大小为:" << v.size() << endl << endl; //弹出栈顶元素 v.pop(); } cout << "栈的大小为:" << v.size() << endl << endl; return 0; } ``` 最后修改:2021 年 04 月 21 日 © 禁止转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏