queue

  • queue模板类的定义在 #include <queue> 头文件中。

与stack模板类很相似,queue模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque类型。

  • 定义queue对象的示例代码如下:

queue q1;

queue q2;

  • queue的基本操作有:

入队,如例:q.push(x); 将x接到队列的末端。

出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。

访问队首元素,如例:q.front(),即最早被压入队列的元素。

访问队尾元素,如例:q.back(),即最后被压入队列的元素。

判断队列空,如例:q.empty(),当队列空时,返回true。

访问队列中的元素个数,如例:q.size()

  • 注意:
    (1)front()和back()仅仅只是返回元素,并不对queue中的元素移除,所以多次执行这两个成员函数,而不执行pop(),返回的结果一样;
    (2)pop()虽然执行移除操作,但是并不返回被移除对象的值;

​ (3)如果想返回queue的元素,并移除返回的元素,就要同时执行fornt()和pop();
​ (4)如果queue内没有元素,那么front(),back(),pop()的执行都会导致未定义的行为,所以在执行这三个操作是,可以通过size()和empty()判断容器是否为空;

c++中queue用法相关推荐

  1. c语言中 队列用法,c中queue的用法

    下面小编就跟你们详细介绍下c中queue的用法的用法,希望对你们有用. c中queue的用法的用法如下: Model ----------------------------------------- ...

  2. c# 多线程中lock用法的经典实例

    一.Lock定义     lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断.它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行, ...

  3. oracle 删除 queue,C++ stl队列Queue用法介绍:删除,插入等操作代码举例

    c++队列queue模板类的定义在头文件中,queue 模板类需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型. C++队列Queue是一种容 ...

  4. C++队列queue用法详解

    一.定义 queue是一种容器转换器模板,调用#include< queue>即可使用队列类. 二.queue初始化 queue<Type, Container> (<数 ...

  5. c++中static_cast用法与uchar/char的区别

    1.c++中static_cast用法 static_cast是指显性类型强制转换,如: int a = static_cast<int>(120.34); 结果为a= 120. 和C语言 ...

  6. 简单介绍Python中异常处理用法

    这篇文章主要给大家分享的是 Python中异常处理用法,为了保证程序的健壮性与容错性,即在遇到错误时候程序不会崩溃,我们需要对异常进行处理,下面来看看文章对此的用法,需要的朋友可以参考一下 为了保证程 ...

  7. 关于OpenCV中常见函数用法总结

    关于OpenCV中常见函数用法总结 一 一般Mat的赋值操作 二 求Mat中的最大值以及最小值 三 randn()函数给图像添加高斯噪声 四 mean()函数的用法 五 系统计时器 六 矩阵之间的四则 ...

  8. java中import用法

    java中import用法 单类型导入(single-type-import),例如import java.io.File; 按需类型导入(type-import-on-demand),例如 impo ...

  9. 一个线程中lock用法的经典实例

    1 /* 2 该实例是一个线程中lock用法的经典实例,使得到的balance不会为负数 3 同时初始化十个线程,启动十个,但由于加锁,能够启动调用WithDraw方法的可能只能是其中几个 4 作者: ...

最新文章

  1. android开发之Intent.setFlags()_让Android点击通知栏信息后返回正在运行的程序
  2. 用偷梁换柱法清除腾讯QQ迷你首页的方法
  3. scikit-learn一般实例之一:绘制交叉验证预测
  4. Docker镜像上传至私有仓库
  5. 控制台应用和空项目有什么区别_农业项目经理和物联网项目经理有什么区别
  6. eclipse 汉化教程(语言包)
  7. 隐马尔科夫模型-前向算法
  8. jdbc dao 工具类mysql_Java基于JDBC实现事务,银行转账及货物进出库功能示例
  9. format 函数包含_Python成为专业人士笔记-高级对象Format格式化
  10. 安装环境及Git小技巧
  11. servlet的url-pattern匹配规则详细描述
  12. 关于ArrayList和Vector区别
  13. php 多任务,PHP并行多任务研究(笔记)
  14. URL和URI(二)URI
  15. iOS Mach-O文件
  16. [NOIP模拟测试34]反思+题解
  17. 北京市财政局数据备份设备购置建设项目招标公告7,977,038.00万元
  18. 计算机二级和英语六级什么时候出成绩,英语四六级口语考试成绩确定标准是什么?成绩何时发布?...
  19. 金融借贷平台大数据风控解决方案
  20. mysql 正则表达式区间,MySQL——使用正则表达式查询

热门文章

  1. 理解 JS 回调函数中的 this
  2. 转载: CentOS下配置Apache
  3. 线段树之单点更新,区域求和
  4. 让普通用户可以kill自己用户下的session(转)
  5. HDU-4310 Hero 贪心Or动态规划
  6. 白话设计模式--结构型模式之 适配器模式(Adapter)
  7. RLock(递归锁)
  8. Eclipse中自动提示的方法参数都是arg0,arg1的解决方法
  9. vue.js页面刷新出现闪烁问题的解决
  10. adb devices 找不到夜神模拟器解决方法