我有 QMultiMap 如下:
QMultiMap <int, QString> paramIDMap, paramValueMap;
我的价值是“xyz”,我想把它作为关键。
示例:paramIDMap.getkey("xyz")
像这样
这个怎么做?
预期的输出应该返回键。
QMultiMap旨在存储键值对,以便通过键快速查找,其中一个键可以有多个值。从 QMap 继承的QList QMap::keys(const T &value) const方法将返回特定值的键的 QList。那不会是快速查找,时间复杂度将是线性的。
QMultiMap <int, QString> paramIDMap;
paramIDMap.insert(1,"a");
paramIDMap.insert(1,"b");
paramIDMap.insert(2,"a");
paramIDMap.insert(2,"b");
QList<int> ks = paramIDMap.keys("a");
其中ks
将包含 [1,2]。