搜索
热搜: NOIP OIer 神牛
查看: 275|回复: 1

C++ 清空队列(queue)的几种方法

[复制链接]

35

主题

54

帖子

4532

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4532
发表于 2022-10-27 18:08:24 | 显示全部楼层 |阅读模式

C++中的queue自身是不支持clear操作的,但是双端队列deque是支持clear操作的。
方法一
直接用空的队列对象赋值
queue<int> q1;// process// ...q1 = queue<int>();方法二
遍历出队列
while (!Q.empty()) Q.pop();方法三
使用swap,这种是最高效的,定义clear,保持STL容器的标准。
void clear(queue<int>& q) {        queue<int> empty;        swap(empty, q);}





回复

使用道具 举报

主题

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2022-10-30 15:58:40 | 显示全部楼层
啊啊懂了
这下不会超限了!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

津ICP备19006949号-1 | 津公网安备12010102000465号

快速回复 返回顶部 返回列表