Tipos de classe anônima
As classes podem ser anônimas, ou seja, podem ser declaradas sem um identificador. Isso é útil quando você substitui um nome de classe por um nome de typedef, como a seguir:
typedef struct
{
unsigned x;
unsigned y;
} POINT;
Dica
O uso de classes anônimas mostradas no exemplo anterior é útil para preservar a compatibilidade com o código C existente.Em alguns códigos C, o uso de typedef em conjunto com estruturas anônimas será prevalente.
As classes anônimas também são úteis quando você quer que uma referência a um membro da classe apareça como se não estivesse contida em uma classe separada, como a seguir:
struct PTValue
{
POINT ptLoc;
union
{
int iValue;
long lValue;
};
};
PTValue ptv;
No código anterior, iValue pode ser acessado usando o operador de seleção de membros de objeto (.) como segue:
int i = ptv.iValue;
As classes anônimas estão sujeitas a determinadas restrições. (Para obter mais informações sobre unions anônimas, consulte Unions.) Classes anônimas:
Não é possível ter um construtor ou um destruidor.
Não é possível ser transmitido como argumentos para as funções (a menos que a verificação de tipos seja derrotada usando reticências).
Não é possível ser retornado como valores de retorno de funções.