Unions anonymes
Remonter à Unions - Index
Une union sans sélecteur qui n'est pas utilisée pour déclarer un objet nommé (ou autre type) est appelée union anonyme. Elle adopte la forme suivante :
union { member_list };
Il est possible d'accéder directement à ses membres dans la portée de déclaration de l'union, sans utiliser la syntaxe x.y ni p->y.
Les unions anonymes peuvent être globales, imbriquées ou non-imbriquées. Le C ANSI n'autorise jamais les unions anonymes. Le C++ ANSI autorise les trois types d'unions anonymes.
Unions anonymes C++
Les unions anonymes peuvent être globales, imbriquées ou non-imbriquées. Le C ANSI n'autorise jamais les unions anonymes. Le C++ ANSI autorise les trois types d'unions anonymes.
Unions anonymes imbriquées
La structure externe, classe ou union, d'une union anonyme imbriquée doit avoir une balise. Borland C et C++ autorise par défaut les unions anonymes imbriquées. En C, une union anonyme imbriquée peut avoir, de manière facultative, une balise.
Exemple :
struct outer {
int x;
};
int main(void)
{
struct outer o;
}