c++ queue(队列)使用指南

C++中的queue是一个容器适配器,基于deque实现,遵循先进先出原则。尽管deque功能更强大,但使用queue可以明确队列的意图,避免误操作。本文介绍了queue的构造、成员及非成员函数,包括交换操作和比较关系符的使用。
摘要由CSDN通过智能技术生成

1.deque简介

queue和stack类似,是STL中的容器适配器,它们并不是容器,而是基于其他容器实现。那么什么叫容器适配器呢,大家可以想一想电源适配器,没错就是下面这个:

它能直接给手机充电吗?当然不能,那是它可以将电源转化为手机能够适应的电压。容器这里就相当于电源,容器适配器对容器的接口进行封装,以达到我们需要的要求。

queue的原理和操作十分简单,即先进先出原则,即只能从队列开头删除元素,只能从队列末尾删除元素,默认是基于deque(双端队列)实现的。使用时需要包含头文件<queue>。

既然它默认是基于deque实现,那么很容易想到,queue能实现的操作deque都能实现,事实也是如此。你可以会有疑问,既然如此,那为什么我们要用queue,而不是直接使用deque?在很多情况下,我们使用queue,就是为了告诉自己或别人,这是一个队列,防止熊孩子们的误操作,把多余的接口删除,防止不必要的错误。就如同const关键字,其存在意义就是为了防止数据被更改。

deque不提供迭代器,不提供随机访问。

2.构造

较为简单,直接看官方文档的例子:


                
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值