Для std::map
:
Необходимо определить оператор сравнения <
для вашего класса.
c
Для std::unordered_map
:
Необходимо определить функцию хеширования (хешер) для вашего класса и, если необходимо, оператор сравнения на равенство ==
. Стандартный хешер std::hash
не умеет хешировать пользовательские типы.
Способы определения хешера:
Перегрузка std::hash
в пространстве имен std
(не рекомендуется):
c
Для std::map
:
Необходимо определить оператор сравнения <
для вашего класса.
c
Для std::unordered_map
:
Необходимо определить функцию хеширования (хешер) для вашего класса и, если необходимо, оператор сравнения на равенство ==
. Стандартный хешер std::hash
не умеет хешировать пользовательские типы.
Способы определения хешера:
Перегрузка std::hash
в пространстве имен std
(не рекомендуется):
c
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.