title: Using an unordered_map with arrays as keys
body: <p>I don't understand why I can't have an <code>unordered_map</code> with an <code>array&lt;int,3&gt;</code> as the key type: </p>
  
  <pre><code>#include &lt;unordered_map&gt;
  
  using namespace std;
  
  int main() {
  
     array&lt;int,3&gt; key = {0,1,2};
  
     unordered_map&lt; array&lt;int,3&gt; , int &gt;  test;
     test[key]  = 2;
  
     return 0;
  }
  </code></pre>
  
  <p>I get a long error, the most pertinent part being </p>
  
  <pre><code>main.cpp:11:9: error: no match for ‘operator[]’ (operand types are std::unordered_map&lt;std::array&lt;int, 3ul&gt;, int&gt;’ and ‘std::array&lt;int, 3ul&gt;’)
   test[key]  = 2;
       ^
  </code></pre>
  
  <p>Are arrays not eligible to be keys because they miss some requirements?</p>