• STL之Queue容器


    1.Queue容器

    1)queue是队列容器,是一种“先进先出”的容器。

    2)queue是简单地装饰deque容器而成为另外的一种容器。

    3)头文件。#include <queue>  

    2.queue对象的默认构造

    queue采用模板类实现,queue对象的默认构造形式:queue<T> queT;  如:

    queue<int> queInt;            //一个存放int的queue容器。

    queue<float> queFloat;     //一个存放float的queue容器。

    queue<string> queString;     //一个存放string的queue容器。

    ...                                    

    //尖括号内还可以设置指针类型或自定义类型。

    3.queue的push()与pop()方法

    queue.push(elem);   //往队尾添加元素

    queue.pop();   //从队头移除第一个元素

    queue<int> queInt;
    queInt.push(1);queInt.push(3);
    queInt.push(5);queInt.push(7);
    queInt.push(9);queInt.pop();
    queInt.pop();
    此时queInt存放的元素是5,7,9

    4.queue对象的拷贝构造与赋值

    queue(const queue &que);                    //拷贝构造函数

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

    queue<int> queIntA;
    queIntA.push(1);
    queIntA.push(3);
    queIntA.push(5);
    queIntA.push(7);
    queIntA.push(9);
    
    queue<int> queIntB(queIntA);    //拷贝构造
    queue<int> queIntC;
    queIntC = queIntA;                //赋值

    5.queue的数据存取

    queue.back();   //返回最后一个元素

    queue.front();   //返回第一个元素

    queue<int> queIntA;
    queIntA.push(1);
    queIntA.push(3);
    queIntA.push(5);
    queIntA.push(7);
    queIntA.push(9);
    
    int iFront = queIntA.front();        //1
    int iBack = queIntA.back();        //9
    
    queIntA.front() = 11;            //11
    queIntA.back() = 19;            //19

    6.queue的大小

    queue.empty();   //判断队列是否为空

    queue.size();          //返回队列的大小

    queIntA.push(1);       
    queIntA.push(3);          
    queIntA.push(5);        
    queIntA.push(7);        
    queIntA.push(9);        
    
    if (!queIntA.empty())
    {
        int iSize = queIntA.size();        //5
    }
  • 相关阅读:
    Spark记录-SparkSQL远程操作MySQL和ORACLE
    Spark记录-Spark on Yarn框架
    Linux记录-重启后磁盘丢失问题解决方案
    Spark记录-阿里巴巴开源工具DataX数据同步工具使用
    Spark记录-SparkSql官方文档中文翻译(部分转载)
    Spark记录-SparkSQL一些操作
    Spark记录-Spark-Shell客户端操作读取Hive数据
    Spark记录-SparkSQL相关学习
    Spark记录-Scala程序例子(函数/List/match/option/泛型/隐式转换)
    CM记录-升级Spark版本到2.x(转载)
  • 原文地址:https://www.cnblogs.com/gd-luojialin/p/9779512.html
Copyright © 2020-2023  润新知