title: What should I pass to unordered_map's bucket count argument if I just want to specify a hash function?
body: <p>C++11's <code>unordered_map</code>'s default constructor looks like this:</p>
  
  <pre><code>explicit unordered_map( size_type bucket_count = /*implementation-defined*/,
                      const hasher&amp; hash = hasher(),
                      const key_equal&amp; equal = key_equal(),
                      const allocator_type&amp; alloc = allocator_type() );
  </code></pre>
  
  <p>I want to create an <code>unordered_map</code> with a custom hasher function, but it's the second argument to the constructor.</p>
  
  <p>What bucket count should I use? Is there a magic value I can use to tell the container to decide for itself? Otherwise, is there a heuristic I can use to guesstimate a good bucket number based on something like the number of keys I expect my map to contain? Should I even care?</p>