Aviso do compilador (nível 3) C4240
extensão não padrão usada: acesso a 'classname' agora definido como 'access specifier', anteriormente ele foi definido como 'access specifier'
Em compatibilidade ANSI (/Za), você não pode alterar o acesso a uma classe aninhada. Nas extensões padrão da Microsoft (/Ze), você pode, com este aviso.
Exemplo
// C4240.cpp
// compile with: /W3
class X
{
private:
class N;
public:
class N
{ // C4240
};
};
int main()
{
}