我想从std::forward_list
中删除元素并将其插入列表的开头
但是没有插入方法......只有insert_after
!
如何在std::forward_list
的开头插入元素?
答案 0 :(得分:6)
使用std::forward_list::push_front
。
示例:
// forward_list::push_front
#include <iostream>
#include <forward_list>
using namespace std;
int main ()
{
forward_list<int> mylist = {77, 2, 16};
mylist.push_front (19);
mylist.push_front (34);
std::cout << "mylist contains:";
for (int& x: mylist) std::cout << ' ' << x;
std::cout << '\n';
return 0;
}
输出:mylist包含:34 19 77 2 16
答案 1 :(得分:2)
您可以使用方法
push_front
在列表的开头插入一个元素
另一种方法是使用方法insert_after
。
以下是使用这两种方法的示例
std::forward_list<int> l;
l.push_front( 1 );
l.insert_after( l.cbefore_begin(), 0 );
for ( int x : l ) std::cout << x << ' ';
std::cout << std::endl;