Problema de declaração aninhada de classe / encaminhamento em C ++
É possível declarar adiante uma classe aninhada e usá-la como o tipo para um membro de dados concreto (não ponteiro para / referência a) da classe externa?
I.E.
class Outer;
class Outer::MaybeThisWay // Error: Outer is undefined
{
};
class Outer
{
MaybeThisWay x;
class MaybeThatOtherWay;
MaybeThatOtherWay y; // Error: MaybeThatOtherWay is undefined
};