首页 > 其他 > 详细

stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃。QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值

时间:2019-09-12 18:53:23      阅读:320      评论:0      收藏:0      [点我收藏+]

我觉得 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 不存在,不会崩溃,你还可以指定默认值

http://www.qtcn.org/bbs/read-htm-tid-86101.html

stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃。QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值

原文:https://www.cnblogs.com/findumars/p/11514363.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!