title: Circular C++ Header Includes
body: <p>In a project I have 2 classes:</p>
  
  <p>// mainw.h</p>
  
  <pre><code>#include "IFr.h"
  ...
  class mainw
  {
  public:
  static IFr ifr;
  static CSize=100;
  ...
  };
  </code></pre>
  
  <p>// IFr.h</p>
  
  <pre><code>#include "mainw.h"
  ...
  class IFr
  {
  public float[mainw::CSize];
  };
  </code></pre>
  
  <p>But I cannot compile this code, getting an error at the <code>static IFr ifr;</code> line. Is this kind of cross-inclusion prohibited?</p>