QMap

#include <QCoreApplication>
#include<QMap>
#include<QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QMap<int,QString> Employees;
    Employees.insert(1,"Bob");
    Employees.insert(2,"Cat");
    Employees.insert(3,"Boat");
    Employees.insertMulti(1,"mmm");

    foreach(int i, Employees.keys())
    {
        qDebug() << Employees[i];
    }

    QMapIterator<int,QString> Iter(Employees);
    while(Iter.hasNext())
       {
        Iter.next();
        qDebug() << Iter.key()<<" "<<Iter.value();
    }

    return a.exec();
}

  

时间: 2024-10-29 04:26:40

QMap的相关文章

第三十七课、深度解析QMap与QHash

一.QMap深度解析 1.QMap是一个以升序键顺序存储键值对的数据结构 (1)QMap原型为class QMap<K, T>模板 (2).QMap中的键值对根据key进行了排序 (3).QMap中的key类型必须重载operator <     (小于操作符) 2.QMap使用实例一 3.QMap使用实例二 4.QMap的注意事项 (1).通过key获取Value时 A.当key存在,返回对应的Value B.当key不存在,返回值类型所对应的"零"值 (2).插入

第37课 深度解析QMap与QHash

1. QMap深度解析 (1)QMap是一个以升序键顺序存储键值对的数据结构 ①QMap原型为 class QMap<K, T>模板 ②QMap中的键值对根据Key进行了排序 ③QMap中的Key类型必须重载operator< .(即“小于”操作符) (2)QMap使用示例1 QMap<QString, int> map; //注意插入时是无序的 map.insert("key 2", 2); map.insert("key 0", 0

QMap与QHash

关联容器可以保存任意多个具有相同类型的项,且它们由一个键索引.Qt提供两个主要的关联容器类:QMap<K, T>和QHash<K, T>. QMap<K, T>是一个以升序键顺序存储键值对的数据结构.这种排列使它可以提供良好的查找插入性能及键序的迭代.在内部,QMap<K, T>是作为一个跳越列表(skip-list)来实现执行的. 在映射中插入项的一种简单方式是调用insert(): QMap<QString, int> map; map.in

1.QT中的容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等

1  新建一个项目 在pro文件中只需要加上CONFIG += C++11 main.cpp #include <QMap> int main() { QMap<int,QString> map; map.insert(1,"1"); map.insert(2,"2"); map.insert(3,"3"); map[4] = "4"; if(map.find(1) == map.end()) { //

1.QT该容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等待

1  新建一个项目 在pro文件里仅仅须要加上CONFIG += C++11 main.cpp #include <QMap> int main() { QMap<int,QString> map; map.insert(1,"1"); map.insert(2,"2"); map.insert(3,"3"); map[4] = "4"; if(map.find(1) == map.end()) { /

Qt ------- QMap和QHash的区别

基本概念: QMap提供了一个从类项为key的键到类项为T的直的映射,通常所存储的数据类型是一个键对应一个值,并且按照Key的次序存储数据.同时这个类也支持一键多值的情况,用类QMultiMap可以实现. QHash具有和QMap几乎完全一样的APi,此类维护这一张哈希表,表的大小和数据项是自适应的,QHash是以任意的顺序住址他的数据,当然了他也是可以支持一键多值的,用类QMultiHash可以实现. 两者之间的区别是: QHash查找速度上显著于QMap. QHash以任意的方式进行存储,而

Qt532.容器QMap&amp;QMultiMap

PS: QMap 一个Key 只能对应 一个Value (不是绝对的情况...内部都有 一个key对应多个value的机制) PS: QMultiMap 一个Key 可以对应 多个Value PS: QMap&QMultiMap 和 QHash&QMultiHash 理解上类似 1.QMap 1.1.代码: void MainWindow::on_pushButton_clicked() { QMap<QString, int> map; map.insert("a&

QMap 的增删改查

map 是一种数据容器,它提供一种由key 到 value 的映射.map 的key 是唯一的, 也是有序的.map 通常由近似平衡的红黑树来实现.key 的有序性,使得插入,查找节点比较有效.map 的操作(增删改查),通常就是对节点的操作(增删改查).当然,map 也有创建(new)和销毁(delete)操作. QMap 是Qt 实现的一种map, 与c++ stl map 使用方法一致. QMap 的增删改查, 程序简单,就直接上代码了,附上运行结果. [cpp] view plain c

QMap 与 QHash

Qt提供的关联容器,QMap.QMultiMap,QHash.QMultiHash和QSet,带有"Multi"字样的容器支持在一个键上面关联多个值. "Hash"容器提供了基于散列函数的更快的查找,而非 Hash 容器则是基于二分搜索的有序集合. 一.QMap.QMultiMap QMap<Key, T>:提供了字典数据结构(关联数组),将类型 T 的值同类型 Key 的键关联起来.通常,每个键与一个值关联.QMap 以键的顺序存储数据:如果顺序无关,