C ++ List insert()函数在指定位置之前插入一个新元素。它通过在列表中添加的元素数量来增加列表容器的大小。
iterator insert( iterator pos, const value_type value); void insert( iterator pos, int n, const value_type value); void insert( iterator pos, InputIterator first, InputIterator last);
pos:它定义了要插入新元素的位置。
value:要插入的值。
n:出现值的次数。
(first,last):它定义要在位置pos插入的元素的范围。
它返回指向新构造元素的迭代器。
让我们看一个简单的实例
#include <iostream> #include<list> using namespace std; int main() { list<int> li={1,2,3,4}; list<int>::iterator itr=li.begin(); li.insert(itr,5); for(itr=li.begin();itr!=li.end();++itr) cout<<*itr; return 0; }
输出:
51234
在此示例中,迭代器指向列表的第一个元素。因此,使用insert()函数将5插入到列表的第一个元素之前。
让我们看一个简单的实例,给出n。
#include <iostream> #include<list> using namespace std; int main() { list<string> li={"C is a language"}; list<string>::iterator itr=li.begin(); li.insert(itr,2,"java "); for(itr=li.begin();itr!=li.end();++itr) cout<<*itr; return 0; }
输出:
java java C is a language
在此示例中,insert()函数在列表的第一个元素之前插入字符串“ java” 2次。
让我们看一个简单的实例
#include <iostream> #include<list> using namespace std; int main() { list<int> li={1,2,3,4,5}; list<int> li1={6,7,8,9}; list<int>::iterator itr=li.begin(); li.insert(itr,li1.begin(),li1.end()); for(itr=li.begin();itr!=li.end();++itr){ cout<<*itr; cout<<? ?; } return 0; }
输出:
6 7 8 9 1 2 3 4 5
在此示例中,给出列表li1的范围(第一,最后)。因此,insert()函数在列表li中的此范围之间插入元素。