如何让QMap有序
2021-05-27 本文已影响0人
诸事圆成
有序的QMap
思想就是存的时候将key放到一个List里,读取数据就遍历那个list,顺序获取key,然后在map里find(key)
template <class Key, class T> struct uOrderMap
{
QList<Key> seqKeys;
QMap<Key, T> maps;
bool append(Key key, T value)
{
if (maps.contains(key))
return false;
seqKeys.append(key);
maps.insert(key, value);
return true;
}
bool remove(Key key)
{
seqKeys.removeOne(key);
maps.remove(key);
}
};