1. 语法:
vector_name.insert (position, val)
- position:插入的位置;
- val:插入的值;
Return value:返回一个迭代器Iterator,指向新插入的元素。
// program below illustrates the // vector::insert() function #include <bits/stdc++.h> using namespace std; int main() { // initialising the vector vector<int> vec = { 10, 20, 30, 40 }; // inserts 3 at front auto it = vec.insert(vec.begin(), 3); // inserts 2 at front vec.insert(it, 2); cout << "The vector elements are: "; for (auto it = vec.begin(); it != vec.end(); ++it) cout << *it << " "; return 0; }
Output:
The vector elements are: 2 3 10 20 30 40
2. 语法:
vector_name.insert(position, size, val)
- position:插入的位置;
- val:插入的值;
- size:插入值的个数;
Return value:返回一个迭代器Iterator,指向新插入的元素。
// program below illustrates the // vector::insert() function #include <bits/stdc++.h> using namespace std; int main() { // initialising the vector vector<int> vec = { 10, 20, 30, 40 }; // inserts 3 one time at front auto it = vec.insert(vec.begin(), 1, 3); // inserts 4 two times at front vec.insert(it, 2, 4); cout << "The vector elements are: "; for (auto it = vec.begin(); it != vec.end(); ++it) cout << *it << " "; return 0; }
Output:
The vector elements are: 4 4 3 10 20 30 40
3. 语法:
vector_name.insert(position, iterator1 , iterator2)
- position:插入的位置;
- iterator1 :插入元素的开始位置;
- iterator2 :插入元素的结束位置;
Return value:返回一个迭代器Iterator,指向新插入的元素。
// program below illustrates the // vector::insert() function #include <bits/stdc++.h> using namespace std; int main() { // initialising the vector vector<int> vec1 = { 10, 20, 30, 40 }; vector<int>vec2; // inserts at the beginning of vec2 vec2.insert(vec2.begin(),vec1.begin(),vec1.end()); cout << "The vector2 elements are: "; for (auto it = vec2.begin(); it != vec2.end(); ++it) cout << *it << " "; return 0; }
参考链接:https://www.geeksforgeeks.org/vector-insert-function-in-c-stl/