title: vector holding read-only matrices?
body: <p>I want to use a vector to hold read-only integer-matrices of the size 5x5</p>
  
  <pre><code>vector&lt;const int[5][5]&gt; startingPieces;
  </code></pre>
  
  <p>But this declaration causes a bunch of weird errors I've never ever seen before.</p>
  
  <pre><code>error C2535: 'const int (*std::allocator&lt;_Ty&gt;::address(const int (&amp;)[5][5]) const)[5][5]' : member function already defined or declared
  1&gt;        with
  1&gt;        [
  1&gt;            _Ty=const int [5][5]
  1&gt;        ]
  1&gt;        c:\program files\microsoft visual studio 9.0\vc\include\xmemory(109) : see declaration of 'std::allocator&lt;_Ty&gt;::address'
  1&gt;        with
  1&gt;        [
  1&gt;            _Ty=const int [5][5]
  1&gt;        ]
  1&gt;        c:\program files\microsoft visual studio 9.0\vc\include\vector(429) : see reference to class template instantiation 'std::allocator&lt;_Ty&gt;' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            _Ty=const int [5][5]
  1&gt;        ]
  1&gt;        c:\program files\microsoft visual studio 9.0\vc\include\vector(439) : see reference to class template instantiation 'std::_Vector_val&lt;_Ty,_Alloc&gt;' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            _Ty=const int [5][5],
  1&gt;            _Alloc=std::allocator&lt;const int [5][5]&gt;
  1&gt;        ]
  1&gt;        c:\users\eric\documents\visual studio 2008\projects\testing grounds\testing grounds\main.cpp(14) : see reference to class template instantiation 'std::vector&lt;_Ty&gt;' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            _Ty=const int [5][5]
  1&gt;        ]
  </code></pre>
  
  <p>So, what is wrong with this declaration?</p>