A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.com/reference/unordered_set/unordered_set/hash_function/ below:

public member type

<unordered_set>

std::unordered_set::hash_function
hasher hash_function() const;

Get hash function

Returns the hash function object used by the unordered_set container.

The hash function is a unary function that takes an object of type key_type as argument and returns a unique value of type size_t based on it. It is adopted by the container on construction (see unordered_set's constructor for more info). By default, it is the default hashing function for the corresponding key type: hash<key_type>.



Parameters none

Return Value The hash function.

Member type hasher is the type of the hash function used by the container, defined in unordered_set as an alias of its second template parameter (Hash).



Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// unordered_set::hash_function
#include <iostream>
#include <string>
#include <unordered_set>

typedef std::unordered_set<std::string> stringset;

int main ()
{
  stringset myset;

  stringset::hasher fn = myset.hash_function();

  std::cout << "that: " << fn ("that") << std::endl;
  std::cout << "than: " << fn ("than") << std::endl;

  return 0;
}

Possible output:
that: 1046150783
than: 929786026

Notice how two similar strings yield quite different hash values.



Complexity Constant.

Iterator validity No changes.

See also
unordered_set::key_eq
Get key equivalence predicate (public member type)
unordered_set::get_allocator
Get allocator (public member function)

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4