Qt中的QMap在进行比较的时候,先要确定是否包含主键,否则直接比较的话它会直接默认的创建一个主键来进行。
比如
QMap<QString,int> _map;
_map["one"] = 1;
_map["two"] = 2;
// 在此时_map有两个元素
if (_map["three"] == 3)
{
// 在上面的if语句中进行比较的时候已经默认地进行了_map["three"] == 0的操作。
}
// 在此时,_map有三个元素,而此非本意
所以,为了准确地表达自己的意思,需要先进行contains()判断:
if (_map.contains("three") && _map["three"] == 3)
{
//
}
Qt中QMap的使用注意一点
最新推荐文章于 2025-09-12 19:00:59 发布
本文介绍了在Qt中使用QMap时需要注意的问题,特别是如何避免因直接比较未存在的键值而引发的意外行为。文章强调了在进行比较之前应该先使用contains()方法来检查键是否存在。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
图片生成
Stable-Diffusion
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率
1573

被折叠的 条评论
为什么被折叠?



