How to create an instance of a nested class that is defined outside of the enclosing one?
<p>If I define a nested class and then create an instance like this:</p>

<pre><code>class A  
{   
    class B  
    {  
        ...
    };
    B b; 
};
</code></pre>

<p>everything is ok. But if I just declare B inside of A and define it outside, I can't create an instance of B, probably because the compiler don't know how much space the instance of B will need. But code is not much readable when you define a class inside another. Is there a way to make this work?</p>

<pre><code>class A  
{
    class B;
    B b;
};
class A::B
{
    ...
};
</code></pre>
