标签: c++ stl containers
std::list中元素的顺序是否保证按顺序排列(当然,除非出现某种情况)?
std::list
此外,是否有任何可能未定义的行为,列表可能会混淆它们?
我的印象是std::deque等容器是订单安全的,但是std::deque不是双重关联的。
std::deque
答案 0 :(得分:4)
是的,订单在std::list保证。由于UB可能发生任何事情,因此可能会混合使用std :: list的顺序(尽管不太可能。)
简短的回答是,如果您的列表不在您认为应该的顺序中,则最可能的原因是您的程序中存在错误。