multiset::insert(是C++ STL中的内置函数,可在多集容器中插入元素,或将元素从一个位置插入到另一个位置(从一个多集到另一个多集)。
- 用法:
iterator multiset_name.insert(element)
参数:该函数接受要插入到多集容器中的强制性参数element 。
返回值:该函数返回一个指向多元素容器中插入元素的迭代器。
以下示例程序旨在说明上述函数:
// CPP program to demonstrate the // multiset::insert(element) function #include <bits/stdc++.h> using namespace std; int main() { multiset<int> s; // Function to insert elements // in the set container s.insert(1); s.insert(4); s.insert(1); s.insert(5); s.insert(1); cout << "The elements in multiset are: "; for (auto it = s.begin(); it != s.end(); it++) cout << *it << " "; return 0; }
输出:The elements in multiset are: 1 1 1 4 5
- 用法:
iterator multiset_name.insert(iterator position, element)
参数:该函数接受两个参数,如下所述:
- element:它指定要在多集容器中插入的元素。
- position:它没有指定要插入的位置,它仅指向要开始搜索操作以插入的位置,以加快处理速度。插入是根据多集容器遵循的顺序完成的。
返回值:该函数返回一个指向多元素容器中插入元素的迭代器。
以下示例程序旨在说明上述函数:
// CPP program to demonstrate the // multiset::insert(iterator, element) function #include <bits/stdc++.h> using namespace std; int main() { multiset<int> s; // Function to insert elements // in the set container auto itr = s.insert(s.begin(), 1); // the time taken to insertion // is very less as the correct // position for isnertion is given itr = s.insert(itr, 4); itr = s.insert(itr, 1); itr = s.insert(itr, 5); // Slow insertion as position is // not given correctly itr = s.insert(s.begin(), 3); cout << "The elements in multiset are: "; for (auto it = s.begin(); it != s.end(); it++) cout << *it << " "; return 0; }
输出:The elements in multiset are: 1 1 3 4 5
- 用法:
iterator multiset_name.insert(iterator position1, iterator position2)
参数:该函数接受两个参数position1和position2,它们指定元素的范围。范围[position1,last)内的所有元素都插入到另一个set容器中。
返回值:该函数返回一个多重集,其中所有元素都在[position1,last)范围内。
以下示例程序旨在说明上述函数:
// CPP program to demonstrate the // multiset::insert(iterator1, iterator2) function #include <bits/stdc++.h> using namespace std; int main() { multiset<int> s1; // Function to insert elements // in the set container s1.insert(1); s1.insert(4); s1.insert(1); s1.insert(5); s1.insert(1); s1.insert(3); cout << "The elements in multiset1 are: "; for (auto it = s1.begin(); it != s1.end(); it++) cout << *it << " "; multiset<int> s2; // Function to insert one multiset to another // all elements from where 3 is to end is // inserted to multiset2 s2.insert(s1.find(3), s1.end()); cout << "\nThe elements in multiset2 are: "; for (auto it = s2.begin(); it != s2.end(); it++) cout << *it << " "; return 0; }
输出:The elements in multiset1 are: 1 1 1 3 4 5 The elements in multiset2 are: 3 4 5
相关用法
- C++ multiset clear()用法及代码示例
- C++ multiset equal_range()用法及代码示例
- C++ multiset find()用法及代码示例
- C++ multiset get_allocator()用法及代码示例
- C++ multiset empty()用法及代码示例
- C++ multiset count()用法及代码示例
- C++ multiset emplace_hint()用法及代码示例
- C++ multiset begin()、end()用法及代码示例
- C++ multiset key_comp()用法及代码示例
- C++ multiset cbegin()、cend()用法及代码示例
- C++ multiset crbegin()、crend()用法及代码示例
- C++ multiset rbegin()、rend()用法及代码示例
- C++ set insert()用法及代码示例
- C++ vector insert()用法及代码示例
- C++ unordered_set insert()用法及代码示例
注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 multiset insert() function in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。