标签: c++ stl stdlist
为什么std::list不能在恒定时间内拆分/合并?他们不只是链接列表吗?
std::list
我确定我错过了什么。能否请您深入了解背后的原因?
答案 0 :(得分:3)
这是一种要求size()为恒定时间的副作用(有人说是一个相当不幸的副作用)。不可能同时拥有size()和splice()个子列表。由于所有标准容器都需要具有恒定时间size(),因此这必然要求子列表splice()是线性的。
size()
splice()