c++11 标准模板(STL)(std::queue)(一)

std::queue是一个C++标准库中的容器适配器,实现FIFO(先进先出)数据结构。它使用底层的deque或list容器,提供了如front、back、push和pop等操作。队列在尾部添加元素,在首部移除元素。模板参数T定义存储的元素类型,Container则定义底层容器,如deque或list,它们需满足序列容器的要求。
摘要由CSDN通过智能技术生成
std::queue
定义于头文件 <queue>
template<

    class T,
    class Container = std::deque<T>

> class queue;

 

std::queue 类是容器适配器,它给予程序员队列的功能——尤其是 FIFO (先进先出)数据结构。

类模板表现为底层容器的包装器——只提供特定的函数集合。 queue 在底层容器尾端推入元素,从首端弹出元素。

模板形参

T-存储的元素类型。若 TContainer::value_type 不是同一类型则行为未定义。 (C++17 起)
Container-用于存储元素的底层容器。容器必须满足序列容器 (SequenceContainer) 的要求。另外,它必须提供带通常语义的下列函数:
  • back()
  • front()
  • push_back()
  • pop_front()

标准容器 std::deque 和 std::list 满足这些要求。

成员类型

成员类型定义
container_typeContainer
value_typeContainer::value_type
size_typeContainer::size_type
referenceContainer::reference
const_referenceContainer::const_reference

成员函数

(构造函数)

构造 queue
(公开成员函数)

(析构函数)

析构 queue
(公开成员函数)

operator=

赋值给容器适配器
(公开成员函数)

元素访问

front

访问第一个元素
(公开成员函数)

back

访问最后一个元素
(公开成员函数)

容量

empty

检查底层的容器是否为空
(公开成员函数)

size

返回容纳的元素数
(公开成员函数)

修改器

push

向队列尾部插入元素
(公开成员函数)

emplace

(C++11)

于尾部原位构造元素
(公开成员函数)

pop

删除栈顶元素
(公开成员函数)

swap

交换内容
(公开成员函数)

成员对象

Container c

底层容器
(受保护成员对象)

非成员函数

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

按照字典顺序比较 queue 中的值
(函数模板)

std::swap(std::queue)

特化 std::swap 算法
(函数模板)

辅助类

std::uses_allocator<std::queue>

(C++11)

特化 std::uses_allocator 类型特性
(函数模板)

推导指引(C++17 起)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值