std::list
中的元素顺序是否保证保持有序(当然,除非发生排序或发生某种事情)?std :: list的顺序是否有保证?
此外,是否有任何可能未定义的行为,列表可能混淆他们呢?
我曾经有过这样的印象:容器如std::deque
等是安全的,但是唉std::deque
没有双链接。
std::list
中的元素顺序是否保证保持有序(当然,除非发生排序或发生某种事情)?std :: list的顺序是否有保证?
此外,是否有任何可能未定义的行为,列表可能混淆他们呢?
我曾经有过这样的印象:容器如std::deque
等是安全的,但是唉std::deque
没有双链接。
是什么让你认为链表的std :: list实现不保存它的顺序? – DavidO
@DavidO - 无;只是一个想法。我觉得他们是,但更多的时候是隐藏的东西,其他人知道我不知道。 – Qix
那么,像'std :: vector'和'std :: deque'(以及任何好的旧数组),它就是一个序列容器。如果图书馆可以随机对其元素进行重新排序,它将失去其意义。 –