Skip to content
Related Articles

Related Articles

Improve Article

map emplace() in C++ STL

  • Difficulty Level : Medium
  • Last Updated : 29 Jun, 2018

The map::emplace() is a built-in function in C++ STL which inserts the key and its element in the map container. It effectively increases the container size by one. If the same key is emplaced more than once, the map stores the first element only as the map is a container which does not store multiple keys of the same value.

Syntax:

map_name.emplace(key, element)

Parameters: The function accepts two mandatory parameters which are described below:

  • key – specifies the key to be inserted in the multimap container.
  • element – specifies the element to the key which is to be inserted in the map container.

Return Value: The function does not return anything.




// C++ program for the illustration of
// map::emplace() function
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
  
    // initialize container
    map<int, int> mp;
  
    // insert elements in random order
    mp.emplace(2, 30);
    mp.emplace(1, 40);
    mp.emplace(2, 20);
    mp.emplace(1, 50);
    mp.emplace(4, 50);
  
    // prints the elements
    cout << "\nThe map is : \n";
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.begin(); itr != mp.end(); itr++)
        cout << itr->first << "\t" << itr->second << endl;
  
    return 0;
}
Output:
The map is : 
KEY    ELEMENT
1    40
2    30
4    50
Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.
My Personal Notes arrow_drop_up
Recommended Articles
Page :