zoukankan      html  css  js  c++  java
  • QQueue与QStack使用

    博客地址已更改,文章数量较多不便批量修改,若想访问源文请到 coologic博客 查阅,网址:www.coologic.cn

    如本文记录地址为 techieliang.com/A/B/C/ 请改为 www.coologic.cn/A/B/C/ 即可查阅

    版权声明:若无来源注明,Techie亮博客文章均为原创。 转载请以链接形式标明本文标题和地址:
    本文标题:QQueue与QStack使用     本文地址:http://techieliang.com/2017/12/576/

    1. 介绍

    QQueue是Qt的队列实现,符合先进先出FIFO,继承自QList,可以使用QList所有方法,但不建议使用,属于QQueue的方法有

    1. T dequeue()
    2. void enqueue(const T &t)
    3. T &head()
    4. const T &head() const
    5. void swap(QQueue<T> &other)

    QStack是Qt的栈实现,符合后进先出LIFO,继承自QVector,可以使用QVector所有方法,但不建议食用,属于QStack的方法有

    1. T pop()
    2. void push(const T &t)
    3. void swap(QStack<T> &other)
    4. T &top()
    5. const T &top() const

    2. 简单范例

    所有父类方法均可使用,可参见QList使用下面例子仅对比分析

    1. QQueue<int> m_queue;
    2. m_queue.enqueue(1);
    3. m_queue.enqueue(2);
    4. m_queue.enqueue(3);
    5. qDebug()<<m_queue.size();
    6. qDebug()<<m_queue.dequeue();
    7. qDebug()<<m_queue.dequeue();
    8. qDebug()<<m_queue.dequeue();
    9. qDebug()<<m_queue.size();
    10. QStack<int> m_stack;
    11. m_stack.push(1);
    12. m_stack.push(2);
    13. m_stack.push(3);
    14. qDebug()<<m_stack.size();
    15. qDebug()<<m_stack.pop();
    16. qDebug()<<m_stack.pop();
    17. qDebug()<<m_stack.pop();
    18. qDebug()<<m_stack.size();

    结果

    1. 3
    2. 1
    3. 2
    4. 3
    5. 0
    6. 3
    7. 3
    8. 2
    9. 1
    10. 0
    转载请以链接形式标明本文标题和地址:Techie亮博客 » QQueue与QStack使用
  • 相关阅读:
    MyCat清单
    Nginx整合Tomcat
    Nginx安装与配置
    Spring清单
    Shiro清单
    Dubbo清单
    MyBatis清单
    查询数据库的编码
    myBatis
    面试
  • 原文地址:https://www.cnblogs.com/techiel/p/7999380.html
Copyright © 2011-2022 走看看