从 QList 中删除重复项

新手上路,请多包涵

多年来,我一直使用以下模式从 C++ std::vector 类型的对象中删除重复项:

 std::vector<int> cont;
std::sort(cont.begin(), cont.end());
cont.erase(std::unique(cont.begin(), cont.end()), cont.end());

现在我想知道 Qt QList<> 类是否使用相同的范例,或者是否有更优雅的方法来做到这一点。

原文由 Vlado Klimovský 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.8k
1 个回答

我不知道性能,但是如何将 QList 转换为 QSet

 QList<int> myQList;
//...
QSet<int> = QSet::fromList(myQList);
// or
QSet<int> = myQList.toSet();

(如果需要,可以使用 QList::fromSet() 将其转换回 QList

原文由 Jérôme 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题