value_compare Class (<map>)

Provides a function object that can compare the elements of a map by comparing the values of their keys to determine their relative order in the map.

class value_compare : public binary_function<value_type, value_type, bool>
{
public:
   bool operator()(const value_type& _Left, const value_type& _Right) const;
   value_compare(key_compare _Pred) : comp(_Pred);
   protected:
      key_compare comp;
};

Remarks

The comparison criterion provided by value_compare between value_types of whole elements contained by a map is induced from a comparison between the keys of the respective elements by the auxiliary class construction. The member function operator uses the object comp of type key_compare stored in the function object provided by value_compare to compare the sort-key components of two elements.

For sets and multisets, which are simple containers where the key values are identical to the element values, value_compare is equivalent to key_compare; for maps and multimaps they are not, as the value of the type pair elements is not identical to the value of the element's key.

Example

See example for value_comp for an example of how to declare and use value_compare.

Requirements

Header: <map>

Namespace: std

See Also

Reference

binary_function Struct

Thread Safety in the C++ Standard Library

Standard Template Library