We recommend using Visual Studio 2017

hash Class


The latest version of this topic can be found at hash Class.

Computes hash code for a value.

template <class Ty>  
struct hash  
 : public unary_function<Ty, size_t> {  
    size_t operator()(Ty val) const;


The member function defines a hash function, suitable for mapping values of type Ty to a distribution of index values. The member operator returns a hash code for val, suitable for use with template classes unordered_map, unordered_multimap, unordered_set, and unordered_multiset. Ty may be any scalar type, string, wstring, error_code, error_condition, u16string, or u32string.

// std_tr1__functional__hash.cpp   
// compile with: /EHsc   
#include <functional>   
#include <iostream>   
#include <unordered_set>   
int main()   
    std::unordered_set<int, std::hash<int> > c0;   
    std::cout << *c0.find(3) << std::endl;   
    return (0);   

Header: <functional>

Namespace: std

unordered_multimap Class
unordered_multiset Class