Qt532.容器QMap&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", );
map.insert("a", );
// ***
map.insertMulti("b", );// ZC: 个人理解:强制使用 一个Key对应多个Value 的机制
map.insert("b", );// ZC: 默认情况,会替换掉 最后插入进来的Value
map.insertMulti("b", );
map.insert("b", );
// ***
map.insert("c", ); qDebug() << map.value("a");
qDebug() << "\t count :"<<map.values("a").count();
qDebug() << "\t " << map.values("a");
qDebug() << map.value("b");
qDebug() << "\t "<< map.values("b");
qDebug() << map.keys();
}
1.2、控制台输出:
2
count : 1
(2)
6
(6, 5)
("a", "c")
2、QMultiMap
2.1、代码:
void MainWindow::on_pushButton_2_clicked()
{
QMultiMap<QString, int> multiMap;
multiMap.insert("a", );
multiMap.insert("a", );
// ***
multiMap.insertMulti("b", );
multiMap.insert("b", );
multiMap.insertMulti("b", );
multiMap.insert("b", );
// ***
multiMap.insert("c", ); qDebug() << multiMap.value("a");
qDebug() << "\t count :"<<multiMap.values("a").count();
qDebug() << "\t " << multiMap.values("a");
qDebug() << multiMap.value("b");
qDebug() << "\t "<< multiMap.values("b");
qDebug() << multiMap.keys();
}
2.2、控制台输出:
2
count : 2
(2, 1)
6
(6, 4, 5, 3)
("a", "c")
3、
4、
5、
Qt532.容器QMap&QMultiMap的更多相关文章
- QMultiMap使用
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QMultiMap使用 本文地址:http://techieliang.com/201 ...
- Qt容器类(总结)(新发现的QQueue和QStack,注意全都是泛型)
Introduction Qt库提供了一组基于模板的一般化的容器类.这些容器可以存储指定的类型的元素.例如,如果你需要一个可变大小的Qstring数组,可以用QVector<QString> ...
- Qt容器类汇总说明
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt容器类汇总说明 本文地址:http://techieliang.com/2017/ ...
- qt基础知识之类库概述
qt是用标准c++编写的跨平台开发类库,它对标准c++进行拓展,引入元对象系统.信号&槽.属性等特征 全局定义 容器类及对应迭代器 qt的模块化体系,分为 基本模块和拓展模块,一个模块通常就是 ...
- Qt类库介绍
QT类库 QT核心特点 QT是一个跨平台开发的类库. QT的元对象编译器MOC是一个预处理器,在源程序被编译前先将这些QT特性的程序转为标准的C++兼容的形式,然后再有标准的C++编译器进行编译.也就 ...
- QtCore Module's Classes
Qt Core C++ Classes Provides core non-GUI functionality. More... Reference These are links to the AP ...
- QT5:先导篇 数据类型
一.简介 二.字符串类(QString) 三.日期类(QData) 四.时间类(QTime) 五.顺序容器类 Qt的顺序容器类有QList QLinkedList QVector QStack QQ ...
- 1.QT中的容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等
1 新建一个项目 在pro文件中只需要加上CONFIG += C++11 main.cpp #include <QMap> int main() { QMap<int,QStrin ...
- 1.QT该容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等待
1 新建一个项目 在pro文件里仅仅须要加上CONFIG += C++11 main.cpp #include <QMap> int main() { QMap<int,QStri ...
随机推荐
- Java用Gson按照键值key排序json所有节点
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifa ...
- maven项目报错xxx cannot be resolved to a type
同一个maven项目下的不同模块,无法导入其他模块的类,其他模块的所有类都报xxx cannot be resolved to a type 解决方案(参考): 项目Build Path --> ...
- Greenplum5.16.0 安装教程
Greenplum5.16.0 安装教程 一.环境说明 1.1官方网站 Greenplum官方安装说明:https://gpdb.docs.pivotal.io/5160/install_guide/ ...
- Python3 格式化字符串
Python3 格式化字符串 在Python 3.6之前,有两种将Python表达式嵌入到字符串文本中进行格式化的主要方法:%-formatting和str.format() 一.%-formatti ...
- request 模块详细介绍
request 模块详细介绍 request Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装 ...
- 08: MySQL慢查询
1.1 寻找慢查询 定义:我们将超过指定时间的SQL语句查询称为“慢查询”. 1.在mysql日志中开启慢查询日志 1. 修改配置文件 在 my.ini 增加几行: 主要是慢查询的定义时间(超 ...
- vc++读取文件属性的详细信息描述 通过读取QQ的注册表和EXE路径两种方式
转载:http://www.cnblogs.com/pythonschool/archive/2012/10/18/2729872.html // File: GetFileVersion.cpp / ...
- rsync命令解析
!rsync同步模式sync在进行同步或备份时,使用远程shell,或TCP连接远程daemon,有两种途经连接远程主机.shell模式,不需要使用配置文件,也不需要启动远端rsync.远程传输时一般 ...
- CXF整合spring,在tomcat中发布webService
服务端 1.首先下载CXF的jar包 http://pan.baidu.com/s/1dFBwSRf 密码: qyax.里面自带了需要用到的spring的jar包. 或者使用maven,如下配置.不论 ...
- FireMonkey 源码学习(2)
三.TControl FireMonkey重写了TControl的代码,实现了众多接口,如下图: 基类上实现了众多功能,这里不详细描述. 四.TEdit 编辑框是从TControl—TStyledCo ...