3

我需要像 QMap 这样的结构,但没有对键进行排序,所以如果我先在那里插入项目,我可以算出这个项目将在所有其他项目之前。并在指定元素之前或之后插入对。Qt有这样的吗?

4

2 回答 2

3

QMap实现为树,这意味着插入顺序无关紧要。看来您正在寻找一个队列。但是,如果您需要一个可以按插入顺序迭代并同时通过特定键访问的容器,那么 Qt 没有适合您的结构。

这些可以帮助您:

于 2013-04-19T09:59:58.277 回答
1

我用一个

QList<QPair<key,value>> 

为达到这个。但是查找会消耗更多时间,因为您需要遍历 QList 并使用 QPair.first 来查找所需的项目。

编辑:如果你不需要它与其他 API 交互很多,你可以使用 QVector 替换 QList 根据 Qt 官方更快

于 2018-09-12T12:12:29.573 回答