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
};

questionAnswers(6)

yourAnswerToTheQuestion