title: Unordered set in C++, why is hash needed?
body: <p>I just want to store a couple of objects in an unordered set.
  Creating a few sets,</p>
  
  <pre><code>auto set1 = std::unordered_set&lt;Myclass&gt;();
  </code></pre>
  
  <p>I sometimes get errors like this, a lot:</p>
  
  <blockquote>
    <p>Implicit instantiation of undefined template 'std::__1::hash'</p>
  </blockquote>
  
  <p>Is there no other alternative to unordered_set that will work out of the box? And why is "hash" needed?</p>