C++: struct accessing instance of itself : <p>I have come across a rather unusual issue in my code. A <code>struct</code> needs to be able to access instances of itself.</p>

<p>Relavent portion of code:</p>

<pre><code>struct crtr {
  char f;
  void foo() {
    for(int i=0; i&lt;creatures[f].size(); i++) {/*code that accesses creatures[f][i]*/}
  }
};

vector&lt;crtr&gt; creatures[10];
</code></pre>

<p>Of course, this is nowhere close to working - <code>crtr.foo()</code> requires <code>creatures</code>, while <code>creatures</code> requires <code>crtr</code>. Is there some way to initialize <code>creatures</code> before <code>crtr</code>, perhaps changing the <code>vector</code>s' data type? (preferably with minimal pointers, if possible)</p>
