在C ++中拆分和合并std :: list

时间:2015-07-15 15:27:28

标签: c++ stl stdlist

为什么std::list不能在恒定时间内拆分/合并?他们不只是链接列表吗?

我确定我错过了什么。能否请您深入了解背后的原因?

1 个答案:

答案 0 :(得分:3)

这是一种要求size()为恒定时间的副作用(有人说是一个相当不幸的副作用)。不可能同时拥有size()splice()个子列表。由于所有标准容器都需要具有恒定时间size(),因此这必然要求子列表splice()是线性的。