Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
forward_list 是一个单链表(与标准列表容器不同)。list 具有在前面和后面插入的功能,但 forward_list 没有在后面插入元素的功能(类似于 push_back)。为什么不能在列表后面插入元素?
这是一个深思熟虑的设计决策,forward_list与单链表相比应该不会产生任何开销。这在 C++11 标准 (23.3.4.1) 中有说明:
forward_list
注意:forward_list相对于手写的 C 样式单链表,它的空间或时间开销为零。与该目标相冲突的功能已被省略。
维护指向列表末尾的指针会增加空间开销(对于指针本身)和时间开销(在列表末尾插入或删除元素时更新指针)。