multimap::insert是C++ STL中的内置函数,用于在多图容器中插入元素。
- 用法:
iterator multimap_name.insert({key, element})
参数:该函数接受由键和要插入多图容器中的元素组成的对。
返回值:该函数返回一个指向容器中新元素的迭代器。
// C++ program to illustrate // multimap::insert({key, element}) #include <bits/stdc++.h> using namespace std; int main() { // initialize container multimap<int, int> mp; // insert elements in random order mp.insert({ 2, 30 }); mp.insert({ 1, 40 }); mp.insert({ 3, 60 }); mp.insert({ 2, 20 }); mp.insert({ 5, 50 }); // prints the elements cout << "KEY\tELEMENT\n"; for (auto itr = mp.begin(); itr != mp.end(); ++itr) { cout << itr->first << '\t' << itr->second << '\n'; } return 0; }
输出:KEY ELEMENT 1 40 2 30 2 20 3 60 5 50
- 用法:
iterator multimap_name.insert(iterator position, {key, element})
参数:该函数接受两个参数,如下所述:
- {{key, element}这指定了一个由键和要插入多图容器的元素组成的对。
- position:这并不指定要插入的位置,它仅指向要开始搜索插入操作的位置。插入是根据多图容器遵循的顺序完成的。
返回值:该函数返回一个指向容器中新元素的迭代器。
// C++ program to illustrate // multimap::insert({key, element}) #include <bits/stdc++.h> using namespace std; int main() { // initialize container multimap<int, int> mp; // insert elements in random order mp.insert({ 2, 30 }); mp.insert({ 1, 40 }); auto it = mp.find(2); // inserts {3, 6} starting the search from // position where 2 is present mp.insert(it, { 3, 60 }); // prints the elements cout << "KEY\tELEMENT\n"; for (auto itr = mp.begin(); itr != mp.end(); ++itr) { cout << itr->first << '\t' << itr->second << '\n'; } return 0; }
输出:KEY ELEMENT 1 40 2 30 3 60
- 用法:
iterator multimap_name.insert(iterator position1, iterator position2)
参数:该函数接受两个参数position1和position2,它们指定元素的范围。范围[position1,last)范围内的所有元素都插入了多图容器。
返回值:该函数返回一个指向容器中新元素的迭代器。
// C++ program to illustrate // multimap::insert({key, element}) #include <bits/stdc++.h> using namespace std; int main() { // initialize container multimap<int, int> mp, mp1; // insert elements in random order mp.insert({ 2, 30 }); mp.insert({ 1, 40 }); // inserts all elements in range [begin, end) // in mp1 mp1.insert(mp.begin(), mp.end()); // prints the elements cout << "Elements in mp1 are\n"; cout << "KEY\tELEMENT\n"; for (auto itr = mp1.begin(); itr != mp1.end(); ++itr) { cout << itr->first << '\t' << itr->second << '\n'; } return 0; }
输出:Elements in mp1 are KEY ELEMENT 1 40 2 30
相关用法
- C++ multimap::cbegin()、multimap::cend()用法及代码示例
- C++ multimap::crbegin()、multimap::crend()用法及代码示例
- C++ multimap::begin()、multimap::end()用法及代码示例
- C++ multimap::emplace_hint()用法及代码示例
- C++ multimap find()用法及代码示例
- C++ multimap::erase()用法及代码示例
- C++ multimap::emplace()用法及代码示例
- C++ multimap key_comp用法及代码示例
- C++ multimap rbegin用法及代码示例
- C++ multimap rend用法及代码示例
- C++ multimap::operator=用法及代码示例
- C++ multimap::swap()用法及代码示例
- C++ multimap key_comp()用法及代码示例
- C++ multimap equal_range()用法及代码示例
- C++ multimap maxsize()用法及代码示例
注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 multimap insert() in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。