vector中insert函数的用法
时间: 2023-10-01 07:06:02 浏览: 99
vector中的insert函数用于在指定位置插入一个或多个元素。它的语法如下:
```
iterator insert (iterator position, const value_type& val);
void insert (iterator position, size_type n, const value_type& val);
template <class InputIterator>
void insert (iterator position, InputIterator first, InputIterator last);
```
其中,第一个版本的insert函数在指定位置position前插入val,并返回新元素的迭代器。第二个版本的insert函数在指定位置position前插入n个值为val的元素。第三个版本的insert函数在指定位置position前插入来自范围[first, last)的元素。
示例:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> v{1, 2, 3, 4, 5};
v.insert(v.begin() + 2, 6); // 在第三个位置插入6
for (auto i : v) {
std::cout << i << " ";
}
std::cout << std::endl;
v.insert(v.begin() + 3, 2, 8); // 在第四个位置插入两个8
for (auto i : v) {
std::cout << i << " ";
}
std::cout << std::endl;
std::vector<int> v2{10, 11, 12};
v.insert(v.begin() + 1, v2.begin(), v2.end()); // 在第二个位置插入v2中的元素
for (auto i : v) {
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
```
输出:
```
1 2 6 3 4 5
1 2 6 8 8 3 4 5
1 10 11 12 2 6 8 8 3 4 5
```
阅读全文