map insert() in C++ STL - GeeksforGeeks

11 May, 2022
The map::insert() is a built-in function in C++ STL which is used to insert elements with a particular key in the map container. 
Syntax: 
iterator map_name.insert({key, element})




Parameters: The function accepts a pair that consists of a key and element which is to be inserted into the map container. The function does not insert the key and element in the map if the key already exists in the map. 
Return Value: The function returns an iterator pointing to the new element in the container. 
Below is the illustration of the above syntax: 
C++
// C++ program to illustrate// map::insert({key, element})#include <bits/stdc++.h>using namespace std;  int main(){      // initialize container    map<int, int> mp;      // insert elements in random order    mp.insert({ 2, 30 });    mp.insert({ 1, 40 });    mp.insert({ 3, 60 });      // does not inserts key 2 with element 20    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
3    60
5    50




 
Syntax: 
iterator map_name.insert(iterator position, {key, element})




Parameters: The function accepts two parameters which is described below: 
{key, element}: This specifies a pair that consists of a key and element which is to be inserted into the map container.
position: This does not specify the position where the insertion is to be done, it only points to a position from where the searching operation for insertion is to be started to make the process faster. The insertion is done according to the order which is followed by the map container.
Return Value: The function returns an iterator pointing to the new element in the container.
Below is the illustration of the above syntax:
C++
// C++ program to illustrate // map::insert(iteratorposition, {key, element}) #include <bits/stdc++.h> using namespace std;   int main() {         // initialize container     map<int, int> mp;       // insert elements in random order     mp.insert({ 2, 30 });     mp.insert({ 1, 40 });       auto it = mp.find(2);       // inserts {3, 60} 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; } 
Output:
KEY    ELEMENT
1    40
2    30
3    60


Syntax: 
iterator map_name.insert(iterator position1, iterator position2)




Parameters: The function accepts two parameters position1 and position2 which specifies the range of elements. All the elements in the range [position1, last) are inserted in another map container. 
Return Value: The function returns an iterator pointing to the new element in the container. 
Below is the illustration of the above syntax: 
C++
// C++ program to illustrate// map::insert(iteratorposition1, iteratorposition2)#include <bits/stdc++.h>using namespace std;  int main(){      // initialize container    map<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




 
 
 
arorakashish0911
CPP-Functions
cpp-map
STL
C++
STL
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Inheritance in C++
Virtual Function in C++
C++ Classes and Objects
Bitwise Operators in C/C++
Templates in C++ with Examples
Constructors in C++
Operator Overloading in C++
Socket Programming in C/C++
Polymorphism in C++
Object Oriented Programming in C++