C ++ STL中的forward_list :: remove()

在本文中,我们将讨论C ++中forward_list::remove()和forward_list::remove_if()函数的工作原理,语法和示例。

什么是STL中的Forward_list?

转发列表是序列容器,允许在序列中的任何位置进行恒定时间的插入和擦除操作。转发列表被实现为单链接列表。通过与到序列中下一个元素的链接的每个元素的关联来保持顺序。

什么是forward_list::remove()?

forward_list::remove()是C ++ STL中的内置函数,在头文件中声明。remove()用于从forward_list中删除所有元素。容器的大小会因删除的元素数而减少。

语法

flist_container1.remove(const value_type& value );

该函数只能接受一个参数,即要在开头插入的值。

返回值

此函数不返回任何内容

示例

在下面的代码中

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> forwardList = {2, 3, 1, 1, 1, 6, 7};
   //应用删除操作之前列出
   cout<<"应用删除操作之前列出 : ";
   for(auto i = forwardList.begin(); i != forwardList.end(); ++i)
      cout << ' ' << *i;
   //应用删除操作后的列表
   cout<<"\n应用删除操作后的列表 : ";
   forwardList.remove(1);
   for(auto i = forwardList.begin(); i != forwardList.end(); ++i)
      cout << ' ' << *i;
}

输出结果

如果我们运行上面的代码,它将生成以下输出

应用删除操作之前列出 : 2, 3, 1, 1, 1, 6, 7
应用删除操作后的列表 : 2, 3, 6, 7