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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。