stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃。QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值
程序 可以 指定 Key 存在 value 不会 at
2023-09-11 14:19:07 时间
我觉得 Qt6 最应该升级的是容器类
stdmap 在遍历的时候,同时获取 key 与 value 非常方便:
for(auto& var:map){
qDebug()<<var.first<<var.second;
}
但是 QMap 就做不到这么便利了。
for(auto i=qmap.begin();i!=qmap.end();i++){
qDebug()<<i.key()<<i.value();
}
不过说实话,改容器类有点伤筋动骨。
当然我还是建议使用 Qt 自己的容器库。
因为在取值的时候,QMap 就比 stdmap 靠谱多了。
stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃
QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值
相关文章
- 微信应用号(小程序)资源汇总(1010更新)
- 微信小程序_(案例)简单中国天气网首页
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)5-----Assembly.Unload
- 如何处理数组越界而不会让程序崩溃?
- 你也可以做一个简易抽奖程序!
- 《ASP.NET1200例》C# WINFORM程序的三层架构如何建立的。
- 小程序 web 端实时运行工具
- 编写高质量代码:改善Java程序的151个建议 --[98~105]
- 使用subprocess.run调用外部程序
- .NET程序的性能要领和优化建议
- 【MATLAB】matlab实现最大熵法图像分割程序
- 习题 9.9 综合本章例9.9、例9.10和本章习题第7题、第8题,再编写一个主函数,先后调用这些函数。用以上5个函数组成一个程序,实现链表的建立、输出、删除和插入,在主函数中指定需要删除和插入结点。
- 习题 6.15 编写一个程序,将字符数组s2中的全部字符复制到字符数组s1中。不用strcpy函数。复制时,‘0’也要复制过去。‘0’后面的字符不复制。
- 练习1-16 修改打印最长文本行的程序的主程序main,使之可以打印任意长度的输入行的长度,并尽可能多地打印文本。
- 解答私信@被c++折磨头秃的花季美少女 //C++ 写一个带命令行参数的程序,可以实现将参数求和、求平均值以及排序之后输出(参数的数量不确定)。
- 普及windows流氓程序和监控软件
- Android 程序启动另一个程序
- 从单片机基础到程序框架 2019版(2020-07-04)[12.66%]
- 为什么程序可以在被破坏的堆栈中继续存活?
- 程序人生:转行路上披荆斩棘,我的真实转行经验分享...
- 你也可以写个聊天程序 - C# Socket学习1
- 请写出一段JavaScript代码,要求页面有一个按钮,点击按钮弹出确认框。程序可以判断出用
- C++ 程序可以定义为对象的集合
- Scratch3.0——助力新进程序员理解程序(十三、音乐)