vector中insert函数
时间: 2024-06-13 11:06:37 浏览: 69
vector是C++ STL中的一个容器,insert()函数是vector容器中的一个成员函数,用于在vector中插入元素。insert()函数的语法如下:
```c++
iterator insert (iterator position, const value_type& val);
iterator insert (iterator position, size_type n, const value_type& val);
template <class InputIterator>
void insert (iterator position, InputIterator first, InputIterator last);
```
其中,第一个参数position是插入位置的迭代器,第二个参数val是要插入的元素值,第三个参数n是要插入的元素个数,第四个参数first和last是要插入的元素范围。
举个例子,假设我们有一个vector<int> v,现在要在第二个位置插入一个元素5,可以使用以下代码:
```c++
vector<int>::iterator it = v.begin() + 1;
v.insert(it, 5);
```
这里的it是一个迭代器,指向第二个位置,insert()函数会在这个位置插入元素5。
另外,如果要在vector中插入多个元素,可以使用以下代码:
```c++
vector<int>::iterator it = v.begin() + 1;
v.insert(it, 3, 5); // 在第二个位置插入3个元素5
```
如果要在vector中插入另一个vector的元素,可以使用以下代码:
```c++
vector<int> v1 = {1, 2, 3};
vector<int> v2 = {4, 5, 6};
vector<int>::iterator it = v1.begin() + 1;
v1.insert(it, v2.begin(), v2.end()); // 在第二个位置插入v2中的所有元素
```
阅读全文