为什么`std :: forward_list :: insert_after`不返回作为其他序列容器插入的第一个元素?

Zhe*_*hen 7 c++

为什么不std::forward_list::insert_after第一个插入的元素作为其他序列容器返回,例如listvector.有任何故意的原因吗?

Kar*_*ath 1

我不知道委员会的推理,但这是我的:

您可以插入多个元素,例如“范围”。请参阅http://en.cppreference.com/w/cpp/container/forward_list/insert_after

返回第一个元素并不是真正有价值,因为获取第一个元素是微不足道的 - 您已经有一个迭代器,然后将其插入。

OTOH,如果您插入了很多节点,那么到达最后插入的元素可能会代价高昂。