qt中qmap如何通过key获取value
时间: 2024-05-10 14:15:46 浏览: 236
Qt中QMap和QMultimap使用
在Qt中,你可以通过以下方式使用QMap来获取一个key对应的value:
```cpp
QMap<QString, int> map;
map.insert("apple", 5);
map.insert("orange", 3);
QString key = "apple";
int value = map.value(key); // 获取key "apple" 对应的value,即 5
qDebug() << "The value of " << key << " is " << value;
```
在上面的代码中,我们首先创建了一个QMap对象`map`,并向其中插入了两个key-value对。然后,我们定义了一个QString类型的变量`key`,并将其设置为要查找的key。最后,我们通过调用`map.value(key)`函数获取了`key`对应的value,即5。
除了使用`map.value(key)`函数之外,还可以使用`[]`操作符来获取key对应的value,如下所示:
```cpp
int value = map[key]; // 获取key "apple" 对应的value,即 5
```
这两种方式都可以用来获取QMap中key对应的value,但是使用`[]`操作符时需要注意,如果key不存在于map中,那么将会自动插入一个key对应的value,默认为0。如果你不希望在map中自动插入key,那么建议使用`map.value(key)`函数。
阅读全文