QMap的使用(插入、取值、删除、遍历)
1——创建,里面的数据类型随意都行
QMap m_qMap;
2——插入赋值,QMap只允许每个键有一个值。如果使用QMap中已存在的键调用Insert(),则先前的值将被擦除。
//方式一 m_qMap["one"] = "1"; m_qMap["three"] = "2"; m_qMap["seven"] = "3"; //方式二 m_qMap.insert("twelve", 12);
3——取值,如果指定的键不在映射中,会返回默认值,比如QString-int的则返回0,QString-QByteArray的则返回空值“”。
//方式1 QByteArray num1 = m_qMap["thirteen"];//num1 = 3; //方式2 QByteArray num2 = m_qMap.value("one");//num2 = 1;
4——检查映射是否包含某个键
if(m_qMap.contains("one")) { return true; } if(m_qMap.contains("qwe") { return false; }
5——遍历
QMap::const_iterator it = m_qMap.constBegin(); while (it != m_qMap.constEnd()) { cout << it.key() << ": " << it.value() << endl; ++it; }
6——删除,成功返回1,但如果键不在映射中,则返回0
int i = m_qMap.remove("one");//i=1; int b = m_qMap.remove("trg");//b=0;