您的位置:首页 > 产品设计 > UI/UE

STL学习----入门(1)[queue]

2015-08-24 18:36 369 查看
#include<queue>:

// <queue>
template < class T, class Container = deque<T> > class queue;

队列(Queue)是一个容器适配器(Container adaptor)类型,被特别设计用来运行于FIFO(First-in first-out)场景,在该场景中,只能从容器一端添加(Insert)元素,而在另一端提取(Extract)元素。

模板参数

T

容器所包含的元素的类型。

在类模板内部,使用其别名为 value_type 的成员类型。

Container

底层的用于存储元素的容器的类型。

详细说明

queue 通常被实现为容器适配器,即使用一个特定容器类的封装对象作为它的底层容器。queue 提供了一系列成员函数用于操作它的元素,只能从容器“后面”压进(Push)元素,从容器“前面”提取(Pop)元素。

用来实现队列的底层容器必须满足顺序容器的所有必要条件。同时,它还必须提供以下语义的成员函数:

front()
back()
push_back()​
pop_front()

满足上述条件的标准容器有
std::deque
std::list,如果未特别指定
queue 的底层容器,标准容器 std::deque 将被使用。

Any sequence container supporting operations front(), back(), push_back() and pop_front() can be used to instantiate queue. In particular, list and
deque can be used.

成员类型

成员类型定义
value_type第一个模板参数 T
container_type第二个模板参数 Container
size_typeContainer::size_type
referenceContainer::reference
const_referenceContainer::const_reference

成员函数

(constructor)创建 queue
(destructor)释放 queue
operator=赋值操作
Element access:

front访问第一个元素
back访问最后一个元素
Capacity:

empty判断是否为空
size返回有效元素个数
Modifiers:

push在容器顶部插入元素
pop移除容器顶部的元素
emplace
C++11
在容器顶部放置插入元素
swap交换容器的内容

非成员函数

operator==、operator!=、operator<、operator<=、operator>、operator>=

关系操作符
std::swap交换两个队列的内容

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: