如何在C ++ STL列表中插入元素?
假设我们在C++中有一个STL列表。元素很少。我们必须在列表中插入一个新元素。我们可以在结尾,开头或任何位置插入。让我们看一个代码以获得更好的理解。要在开始处插入,我们将使用push_front(),要在结尾处插入,我们将使用push_end(),并且要在任何位置插入,我们必须使用一些操作。我们必须初始化一个迭代器,然后将该迭代器移至正确位置,然后使用insert()方法插入该位置。
示例
#include<iostream>
#include<list>
using namespace std;
void display(list<int> my_list){
for (auto it = my_list.begin(); it != my_list.end(); ++it)
cout << *it << " ";
}
int main() {
int arr[] = {10, 41, 54, 20, 23, 69, 84, 75};
int n = sizeof(arr)/sizeof(arr[0]);
list<int> my_list;
for(int i = 0; i<n; i++){
my_list.push_back(arr[i]);
}
cout << "List before insertion: ";
display(my_list);
//在前面插入100-
my_list.push_front(100);
//在后面插入500-
my_list.push_back(500);
//在索引5处插入1000-
list<int>::iterator it = my_list.begin();
advance(it, 5);
my_list.insert(it, 1000);
cout << "\nList after insertion: ";
display(my_list);
}输出结果
List before insertion: 10 41 54 20 23 69 84 75 List after insertion: 100 10 41 54 20 1000 23 69 84 75 500