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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM