如何让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);
    }
};
上一篇下一篇

猜你喜欢

热点阅读