Qt
提供了一组STL
样containers.Qt容器 - 我应该选择哪种容器?
然而,没有容器可用,哪些商店有序值由它们的顺序(如std::set
)和QSet
因为某些原因行为就像std::unordered_set
。我意识到,在调用“set”数据结构中查找可能是一件好事,但我当然不明白为什么做出这个决定。
我应该使用哪种容器来存储有序项集合(我怀疑QMap
与虚构值是一个非常糟糕的选择)为什么不Qt
提供类似std::set
?
我猜这背后可能有一些技术原因,但不幸的是,我想不出一个。
如果你想要'std :: set',为什么不使用...'std:set'? – 2012-04-20 18:40:26
你可以使用'std :: set',Qt的容器并不是为了完全反映C++标准库(注意缺少多重集或单向转发链表),你可以使用C++容器来存储Qt对象。 – birryree 2012-04-20 18:42:40
@birryree嗯,我不想在一个项目中混合使用'STL'和'Qt'容器。它们有不同的实现细节(例如写入时拷贝)和'Qt'容器实际上试图*镜像*'STL'。他们甚至包括'STL'类接口('push_back'和'append')来提供这种兼容性。 – 2012-04-20 18:45:44