Open In App

multimap key_comp in C++ STL

Last Updated : 12 Nov, 2018
Summarize
Comments
Improve
Suggest changes
Share
Like Article
Like
Report
This is the part of Standard Template Library(STL) of C++. To use this STL, use Namespace: std and include “map” header file in the program. It returns the function object or comparison object or ordering delegate that compares the keys, which is a copy of this container's constructor argument. It is a function pointer or an object that takes two arguments of the same type as the element keys and determines the order of the elements in the container. Syntax:
key_compare key_comp();
Here key_compare is the type of the comparison object, which is associated to the container. Parameters:
It does not accept any parameter.
Returns:
It returns the key comparison function object or ordering delegate, which is defined in multimap as an alias of its third template parameter.
Below is an example of multimap::key_comp: CPP
// c++ program to show
// the use of multimap::key_comp
#include <iostream>
#include <map>
using namespace std;

// Driver code
int main()
{
    multimap<char, int> m1;

    //'comp' works as a variable
    multimap<char, int>::key_compare comp = m1.key_comp();

    // set the values of the pairs
    m1.insert(make_pair('a', 10));
    m1.insert(make_pair('b', 20));
    m1.insert(make_pair('b', 30));
    m1.insert(make_pair('c', 40));

    // key value of last element
    char h = m1.rbegin()->first;
    multimap<char, int>::iterator i = m1.begin();
    do {
        cout << (*i).first << " = " << (*i).second << '\n';
    } while (comp((*i++).first, h));

    return 0;
}
Output:
a = 10
b = 20
b = 30
c = 40

Practice Tags :

Similar Reads