码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Qt STL类型迭代器


    1.简介

    STL迭代器与Qt和STL的原生算法兼容,并且进行了速度优化;对于每一个容器类,都有两个STL类型迭代器:一个用于只读访问,一个用于读写访问。无需修改数据时建议使用只读迭代器,因为速度更快。

    下表为类型总表:

    STL 类型的迭代器类
    容器类只读迭代器读写迭代器
    QList<T>, QQueue<T>QList<T>::const iteratorQList<T>::iterator
    QLinkedList<T>Q1. i nked List<1>: :const_iteratorQLinkedList<T>::iterator
    QVector<T>, QStack<T>QVector<T>::const_ileratorQVector<T>::iterator
    QSet<T>QSet<T>::const_iteratorQSet<T>::iterator
    QMap<Key, P> QMultiMap<Kcy, T>QMap<Key, T>::const_iteratorQMap<Key, T>:: iterator
    QHash<Key, T> QMultiHash<Key, T>QHash<Key, T>: :const_iteratorQHash<Key, T>::iterator

    在定义只读迭代器和读写迭代器时的区别,它们使用了不同的关健字,const_iterator 定义只读迭代器,iterator 定义读写迭代器。

    此外,还可以使用 const_reverse_iterator 和 reverse_iterator 定义相应的反反向迭代器。

    STL 类型的迭代器是数组的指针,所以“++”运算符使迭代器指向下一个数据项,运算符返回数据项内容。STL 迭代器直接指向数据项。

    • begin()指向容器的第一个数据项
    • end()是无效的数据项,表示结束

    2.示例

    使用QList只读迭代器遍历输出数据。

    1. QList<QString> list;
    2. list << "1" << "2" << "3" << "4";
    3. QList<QString>::const_iterator i;
    4. for (i = list.constBegin(); i != list.constEnd(); ++i)
    5. qDebug() << *i;

    使用QMap只读迭代器遍历输出数据。

    1. QMap<int, int> map;
    2. map[1] = 1;
    3. map[2] = 2;
    4. map[3] = 3;
    5. QMap<int, int>::const_iterator i;
    6. for (i = map.constBegin(); i != map.constEnd(); ++i)
    7. qDebug () << i.key () << ':' << i.value ();
  • 相关阅读:
    cmd和PyCharm如何调用电脑中有多个版本Python
    企业中WEB前端项目开发流程
    java项目开发实例ssm流浪猫狗|流浪狗宠物救助网站
    22-07-30 西安 MybatisPlus
    HALCON联合C#机械手视觉定位——初始化(二)
    学习JAVA的第十三天(基础)
    C语言数组全面解析:从初学到精通
    6 个 Python f 字符串提示和技巧
    SpikingJelly笔记之延迟编码
    电脑录屏快捷键是什么?电脑录屏是什么键
  • 原文地址:https://blog.csdn.net/wzz953200463/article/details/125434186
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号