A Hash is a function object for which the output depends only on the input and has a very low probability of yielding the same output given different input values.
Requirements
The type T satisfies Hash if.
The type T satisfies FunctionObject, CopyConstructible, Destructible, and
Given.
h, a value of type T or const T, whose argument type is Key k, a value of type convertible to Key or const Key u, an lvalue expression of type Key
The following expressions must be valid and have t