Поделиться через


Класс value_compare

Предоставляет объект функции, который может сравнивать элементы hash_map путем сравнения значения ключей для определения относительного порядка в hash_map.

Синтаксис

class value_compare
    : std::public binary_function<value_type, value_type, bool>
{
public:
    bool operator()(
        const value_type& left,
        const value_type& right) const
    {
        return (comp(left.first, right.first));
    }

protected:
    value_compare(const key_compare& c) : comp (c) { }
    key_compare comp;
};

Замечания

Критерии сравнения, предоставляемые value_compare между value_types целыми элементами, содержащимися hash_map, вызваны сравнением ключей соответствующих элементов вспомогательным классом. Оператор функции-члена использует объект comp типа key_compare , хранящегося в объекте функции, предоставленном value_compare для сравнения компонентов сортировки двух элементов.

Для объектов hash_set и hash_multiset, которые представляют собой простые контейнеры, в которых значения ключей идентичны значениям элементов, value_compare эквивалентно key_compare; для объектов hash_map и hash_multimap это не так, так как элементы типа pair не эквивалентны значению ключа элемента.

Пример

Пример определения и использования value_compare см. в разделе hash_map::value_comp.

Требования

Заголовок:<hash_map>

Пространство имен: stdext

См. также

Структура binary_function
Потокобезопасность в стандартной библиотеке C++
Справочник по стандартной библиотеке C++