stdmap 用 at() 取值,如果 key 不存在,不好意思,程序崩溃。QMap 用 value()取值,如果 key 不存在,不会崩溃,你还可以指定默认值
作者:互联网
我觉得 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
标签:QMap,value,stdmap,key,崩溃,取值 来源: https://www.cnblogs.com/findumars/p/11514363.html