hash-Klasse
Berechnet den Hashcode für einen Wert.
Syntax
template <class Ty>
struct hash {
size_t operator()(Ty val) const;
};
Hinweise
Das Funktionsobjekt definiert eine Hashfunktion, die geeignet ist, Werte des Ty-Typs einer Verteilung von Indexwerten zuzuordnen. Das Element operator()
gibt einen Hashcode für Val zurück, der für die Verwendung mit Klassenvorlagen unordered_map
, , unordered_multimap
, unordered_set
und unordered_multiset
. Die Standardbibliothek bietet Spezialisierungen für grundlegende Typen: Ty kann ein beliebiger skalarer Typ sein, einschließlich Zeigertypen und Enumerationstypen. Zusätzlich gibt es Spezialisierungen für die Bibliothekstypen string
, wstring
, u16string
, u32string
, string_view
, wstring_view
, u16string_view
, u32string_view
, bitset
, error_code
, error_condition
, optional
, shared_ptr
, thread
, type_index
, unique_ptr
, variant
und vector<bool>
.
Beispiel
// std__functional__hash.cpp
// compile with: /EHsc
#include <functional>
#include <iostream>
#include <unordered_set>
int main()
{
std::unordered_set<int, std::hash<int> > c0;
c0.insert(3);
std::cout << *c0.find(3) << std::endl;
return (0);
}
3
Anforderungen
Header:<functional>
Namespace: std
Siehe auch
<unordered_map>
unordered_multimap-Klasse
unordered_multiset-Klasse
<unordered_set>