zoukankan      html  css  js  c++  java
  • C++STL特殊容器queue

    queue的基本性能

    queue是一个典型的数据缓冲构造,class queue<>实现出一个queue(也称FIFO[先进先出])。通俗的来说,就是一个线性表,你只能从尾部插入元素,而取出元素的操作则只能从首部进行,就像银行排队一样,办理业务只能从队首的人开始办,而新来的人则只能站在队尾等待。

    queue使用须知

    1.包含头文件

    #include<queue>

    2.在头文件<queue>中,class queue 定义如下

    namespace std
    {
        template <typename T,
                  typename Container = deque<T>>
                  class queue;
    }

    第一个template参数代表元素类型。带有默认值的第二个template参数定义queue内部用来存放元素的实际容器,默认采用deque。

    实际上,你可以使用任何sequence容器支持queue,只要它们支持front()、back()、push_back()、pop_front()等操作,最后会给出具体的实例。

    queue核心操作

    1.核心接口成员函数

    push()  //将一个元素放入queue内
    front()  //返回queue内的首部元素
    back()  //返回queue内的最后一个元素
    pop()   //从queue的首部移除一个元素

    2.queue的创建以及操作实例

    #include<iostream>
    #include<queue>
    #include<string>
    using namespace std;
    int main()
    {
        queue<string> q;//创建一个内部容器为string的queue
        q.push("Hellow ");
        q.push("World");
        q.push("!");//进入三个元素
        cout<<q.front();
        q.pop();//输出队首元素的同时弹出该元素,叫"出队"
        cout<<q.front();
        q.pop();
        cout<<q.back()<<endl;//只剩下一个元素时,该元素既是队首元素又是队尾元素
        q.pop();//此时元素全部弹出,下方输出queue此时的容量
        cout<<"Now numeber of elements in the queue: "<<q.size();
    
        return 0;
    }

     

  • 相关阅读:
    自定义jquery插件
    jquery中的编程范式,即jquery的牛逼之处
    $.ajax 完整参数
    URL参数获取/转码
    hello world
    此博客已不更新,作者的个人域名LIZHONGC.COM已经启用。
    岁月记录
    下雪往事
    《x86汇编语言:从实模式到保护模式》检测点和习题答案
    《穿越计算机的迷雾》第二版再版说明
  • 原文地址:https://www.cnblogs.com/cloudplankroader/p/10367556.html
Copyright © 2011-2022 走看看