std::hash (std::string, std::wstring, std::u16string, std::u32string, std::pmr::string, std::pmr::wstring, std::pmr::u16string, std::pmr::u32string)
Defined in header <string> | ||
|---|---|---|
template<> struct hash<std::string>; template<> struct hash<std::wstring>; template<> struct hash<std::u8string>; // c++20 template<> struct hash<std::u16string>; template<> struct hash<std::u32string>; | (since C++11) | |
template<> struct hash<std::pmr::string>; template<> struct hash<std::pmr::wstring>; template<> struct hash<std::pmr::u8string>; template<> struct hash<std::pmr::u16string>; template<> struct hash<std::pmr::u32string>; | (since C++20) |
The template specializations of std::hash for the various string classes allow users to obtain hashes of strings.
| These hashes equal the hashes of corresponding | (since C++17) |
Example
The following code shows one possible output of a hash function used on a string:
#include <iostream>
#include <string>
#include <functional>
int main()
{
std::string s = "Stand back! I've got jimmies!";
std::hash<std::string> hash_fn;
size_t hash = hash_fn(s);
std::cout << hash << '\n';
}Output:
325378910
See also
|
(C++11) | hash function object (class template) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/string/basic_string/hash