[英]Does an iterator iterate through boost::unordered_set or boost::unordered_map in the same order as long as the set's unchanged?
只要集合或映射不变,迭代器是否以相同的顺序迭代boost::unordered_set
或boost::unordered_map
?
哈希映射的某些实现将重新排序散列到同一个bin的项目,将最近访问的项目放在列表的前面,作为优化。 这会改变顺序。 我不知道boost::unordered_map
,但是将来你最终可能会替换std::unordered_map
,它将全部取决于你的编译器的实现。
它应该是确定性的,但只要它们是所谓的无序的 ,你就不应该依赖它来迭代你的元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.