Skip to content
Related Articles

Related Articles

Improve Article

map key_comp() function in C++ STL

  • Difficulty Level : Medium
  • Last Updated : 30 Oct, 2018

The map::key_comp() is a function in STL in C++ that returns a copy of comparison object used by container that compare keys.

Syntax:

map.key_comp()

Return value: This method returns the comparison object used by container that compare keys.

Below examples illustrate the working of key_comp() method:

Example:






// C++ program to demonstrate map::key_comp().
  
#include <iostream>
#include <map>
using namespace std;
  
int main()
{
    // Declare the map
    map<char, int> mymap;
  
    // Compare the key.
    map<char, int>::key_compare
        mycomp
        = mymap.key_comp();
  
    // Populate the map
    mymap['x'] = 50;
    mymap['y'] = 100;
    mymap['z'] = 150;
  
    // Print the map
    cout << "mymap contain:\n";
  
    char highest = mymap.rbegin()->first;
  
    // key value of last element
    map<char, int>::iterator
        it
        = mymap.begin();
  
    do {
        cout << it->first
             << " => " << it->second
             << "\n";
    } while (mycomp((*it++).first, highest));
  
    cout << "\n";
  
    return 0;
}
Output:
mymap contain:
x => 50
y => 100
z => 150

Example 2:




// C++ program to demonstrate map::key_comp().
  
#include <iostream>
#include <map>
using namespace std;
  
int main()
{
    // Declare the map
    map<char, int> mymap;
  
    // Compare the key.
    map<char, int>::key_compare
        mycomp
        = mymap.key_comp();
  
    mymap['a'] = 100;
    mymap['b'] = 200;
    mymap['c'] = 300;
  
    cout << "mymap contain:\n";
  
    char highest = mymap.rbegin()->first;
  
    // key value of last element
  
    map<char, int>::iterator
        it
        = mymap.begin();
  
    do {
        cout << it->first
             << " => "
             << it->second
             << '\n';
    } while (mycomp((*it++).first, highest));
  
    cout << '\n';
  
    return 0;
}
Output:
mymap contain:
a => 100
b => 200
c => 300
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 :