QMultiMap使用
2024-10-19 21:42:44
版权声明:若无来源注明,Techie亮博客文章均为原创。 转载请以链接形式标明本文标题和地址:
本文标题:QMultiMap使用 本文地址:http://techieliang.com/2017/12/539/
本文标题:QMultiMap使用 本文地址:http://techieliang.com/2017/12/539/
文章目录
1. QMultiMap与QMap
操作可以说完全一样,只不过QMultiMap继承自QMap,并实现了一个key 对应多个value(通过插入多个相同key的值)。
由于一个key对应了多个值,所以QMultiMap取消了对”[]”的定义
Unlike QMap, QMultiMap provides no operator[]. Use
value() or replace() if you want to access the most recently inserted
item with a certain key. If you want to retrieve all the values for a
single key, you can use values(const Key &key), which returns a
QList<T>: QList<int> values = map.values(“plenty”); for (int
i = 0; i < values.size(); ++i) cout << values.at(i) <<
endl;
同时value会返回最后一次插入的值,而values可以返回所有的值
2. 使用范例
- QMultiMap<QString,int> m_map;
- //m_map["a"] = 10;//这几个会出错
- //m_map["a"] = 11;
- //m_map["as"] = 13;
- m_map.insert("b",22);//同key不同value
- m_map.insert("b",23);
- m_map.insert("ba",55);
- m_map.insert("ba",56);
- m_map.insert("t1",77);//同value不同key
- m_map.insert("t2",77);
- auto find_index = m_map.find("as");
- if(find_index!=m_map.end()) {
- qDebug()<<find_index.key()<<find_index.value();
- }
- qDebug()<<m_map.value("b");
- qDebug()<<m_map.value("aa");
- qDebug()<<m_map.values("b");//测试同key不同value
- qDebug()<<m_map.key(22);
- qDebug()<<m_map.key(77);
- qDebug()<<m_map.keys(77);//测试同value不同key
- //修改必须用replace
- m_map.replace("b",25);//讲第一个key=b的修改为了25
- m_map.replace("t3",77);//由于没有t3=77所以新增加了一个
- qDebug()<<m_map.values("b");
- qDebug()<<m_map.keys(77);
测试结果
- 23
- 0
- (23, 22)
- "b"
- "t1"
- ("t1", "t2")
- (25, 22)
- ("t1", "t2", "t3")
上述范例可以对比本博客QMap使用
转载请以链接形式标明本文标题和地址:Techie亮博客 » QMultiMap使用
最新文章
- Makefile笔记之二------make的递归执行
- QTP安装连接Oracle数据库
- Command /usr/bin/codesign failed with exit code 1
- 轻松自动化---selenium-webdriver(python) (一)
- 运用Gulp压缩文件编译文件。包括css js html image
- ADO.NET学习系列(一)
- 用delphiXE7 dbExpress Framework提供的功能获取数据表信息
- [转]Unable to build: the file dx.jar was not loaded from the SDK folder!
- FZU 1397 保送
- ftp搭建 与http服务访问
- RAID磁盘阵列及CentOS7系统启动流程(week2_day3)--技术流ken
- Android - 文字向上翻滚效果的实现
- spring coud Feign常用配置
- python if not
- 关于ie6块元素行内元素转换
- GNU C语言开发环境
- String intern 方法 jdk中的描述
- OneZero第三周第二次站立会议(2016.4.5)
- 浙江省“一卡通”异地就医,C#调用省一卡通动态库
- angular的uiRouter服务学习(4)
热门文章
- U盘直接读写(今天用到了)
- R语言学习笔记—决策树分类
- 数据结构与算法之排序(3)插入排序 ——in dart
- 20155207王雪纯 2006-2007-2 《Java程序设计》第二周学习总结
- 20155333 2016-2017-2 《Java程序设计》第一周学习总结
- mysql的启动,停止与重启
- 【bzoj3991】[SDOI2015]寻宝游戏 树链的并+STL-set
- Android:制作聊天气泡点9图
- STM8在IAR中Printf的整形长度问题
- 【替罪羊树】bzoj3224&;luogu3369&;cogs1829 [Tyvj 1728]普通平衡树