From cppreference.com
key_comparekey_comp()const;(since C++23)Returns the function object that compares the keys, which is a copy of this container's
argument comp.
Return value
The key comparison function object.
Complexity
Constant.
Example
Run this code
#include<iostream>#include<flat_map>#include<utility>// Example module 97 key compare functionstructModCmp{booloperator()(intlhs,intrhs)const{return(lhs%97)<(rhs%97);}};intmain(){std::flat_multimap<int,char,ModCmp>cont;cont={{1,'a'},{2,'b'},{3,'c'},{4,'d'},{5,'e'}};autocomp_func=cont.key_comp();for(constautoit:cont){constboolbefore=comp_func(it.first,100);constboolafter=comp_func(100,it.first);std::cout<<"Key ("<<it.first<<','<<it.second<<") ";if(!before&&!after)std::cout<<"equivalent to key (100)\n";elseif(before)std::cout<<"goes before key (100)\n";elseif(after)std::cout<<"goes after key (100)\n";elsestd::unreachable();}}Output:
(1,a) goes before key (100) (2,b) goes before key (100) (3,c) equivalent to key (100) (4,d) goes after key (100) (5,e) goes after key (100) See also
returns the function that compares keys in objects of type value_type
(public member function)