std::hash <std::variant>
De cppreference.com
Definido en el archivo de encabezado <variant> | ||
template<class... Types> struct hash<std::variant<Types...>>; | (desde C++17) | |
La especialización de plantilla de std::hash para la plantilla std::variant permite a los usuarios obtener hashes (resúmenes) de objetos variant
.
La especialización std::hash<std::variant<Types...>> se habilita (véase std::hash) si toda especialización en std::hash<std::remove_const_t<Types>>... está habilitada; de lo contrario, se deshabilita.
Las funciones miembro de esta especialización no se garantiza que sean noexcept.
Contenido |
[editar]Parámetros de plantilla
Types | - | Los tipos de las alternativas soportadas por el objeto variant . |
[editar]Notas
A diferencia de std::hash<std::optional>, el hash (resumen) de un variante típicamente no iguala al hash del valor contenido; esto hace posible distinguir que std::variant<int, int> mantenga el mismo valor que distintas alternativas.
[editar]Ejemplo
Esta sección está incompleta Razón: sin ejemplo |
[editar]Véase también
(C++11) | Objeto función de dispersión (hash ). (plantilla de clase) |