title: Cannot convert from 'cli::array<Type> ^' to 'cli::array<Type> ^'
body: <p>C++ CLR, in Visual Studio 2010 (C++). </p>
  
  <p>I have this struct:</p>
  
  <pre><code>value struct Triangle{
      static array&lt;int&gt;^ v = gcnew array&lt;int&gt;(3);
      static array&lt;int&gt;^ t = gcnew array&lt;int&gt;(3);
      static array&lt;int&gt;^ n = gcnew array&lt;int&gt;(3);
  };
  </code></pre>
  
  <p>and I declare the following in "private" section of my class:</p>
  
  <pre><code>static array&lt;Triangle^&gt;^ triangles = gcnew array&lt;Triangle&gt;(MAX_POLYGONS);
  </code></pre>
  
  <p>I get this error and I have no idea what it means (because it seems to contradict itself):</p>
  
  <pre><code>error C2440: 'initializing' : cannot convert from 'cli::array&lt;Type&gt; ^' to 'cli::array&lt;Type&gt; ^'
           with
           [
               Type=Triangle
           ]
  </code></pre>
  
  <p>Evidently it doesn't like the struct. Should I be using ref instead of value? That produces a lot of pointers. Any push into the correct direction would be appreciated.</p>