How to design a big class header file in c++?
<p>I have a big C++ class, which includes 5 other classes inside, and some of them have other classes inside. The total length of a header (<code>.h</code>) file is very big and it is unreadable. This is what I'm trying to do:</p>

<pre><code>// Foo.h file
#ifndef __INCLUDE_FOO_H
#define __INCLUDE_FOO_H
namespace foo {
class Foo {
public:
  #include "foo/Bar.h"
  void f() { /* something here */ }
};
}
#endif
</code></pre>

<p>This is the sub-class:</p>

<pre><code>// Foo/Bar.h file
class Bar {
}
</code></pre>

<p>What do you think? Is it a proper approach or I'm re-inventing a wheel?</p>
