文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C++中queue容器如何使用

2023-07-05 19:37

关注

这篇“C++中queue容器如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C++中queue容器如何使用”文章吧。

queue容器

1 简介

① queue是一种先进先出的数据结构,它有两个出口。

C++中queue容器如何使用

② 队列容器允许一段新增元素,从另一端移除元素。

③ 队列中只有对头和队尾才可以被外界使用,因此队列不允许有遍历行为。

④ 队列中进数据称为入队。

⑤ 队列中出数据称为出队。

2 常用接口

① 功能描述:栈容器常用的对外接口。

② 构造函数:

queue que; //queue采用模板类实现,queue对象的默认构造形式queue(const queue &que); //拷贝构造函数

③ 赋值操作:

queue& operator=(const queue &que); //重载等号操作符

④ 数据存储:

push(elem); //往队尾添加元素pop(); //从对头移除第一个元素back(); //返回最后一个元素front(); //返回第一个元素

⑤ 大小操作:

empty(); //判断堆栈是否为空size(); //返回栈的大小#include<iostream>using namespace std;#include <queue>#include<string> //队列 Queueclass Person{public:    Person(string name, int age)    {        this->m_Name = name;        this->m_Age = age;    }    string m_Name;    int m_Age;}; void test01(){    //创建队列    queue<Person>q;     //准备数据    Person p1("唐僧", 30);    Person p2("孙悟空", 1000);    Person p3("猪八戒", 900);    Person p4("沙僧", 800);     //入队    q.push(p1);    q.push(p2);    q.push(p3);    q.push(p4);     cout << "队列大小为:" << q.size() << endl;     //判断只要队列不为空,查看对头,查看队尾,出对    while (!q.empty())    {        //查看对头        cout << "对头元素 -- 姓名:" << q.front().m_Name << " 年龄:" << q.front().m_Age << endl;                //查看队尾        cout << "队尾元素 -- 姓名:" << q.back().m_Name << " 年龄:" << q.back().m_Age << endl;         //出对        q.pop();  //出队是出对头元素     }    cout << "队列大小为:" << q.size() << endl;} int main() {    test01();     system("pause");     return 0; }

运行结果:

队列大小为:4
对头元素 -- 姓名:唐僧 年龄:30
队尾元素 -- 姓名:沙僧 年龄:800
对头元素 -- 姓名:孙悟空 年龄:1000
队尾元素 -- 姓名:沙僧 年龄:800
对头元素 -- 姓名:猪八戒 年龄:900
队尾元素 -- 姓名:沙僧 年龄:800
对头元素 -- 姓名:沙僧 年龄:800
队尾元素 -- 姓名:沙僧 年龄:800
队列大小为:0
请按任意键继续. . .

以上就是关于“C++中queue容器如何使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯