Algunos compiladores de C ++ permiten uniones y estructuras anónimas como una extensión de C ++ estándar. Es un poco de azúcar sintáctico que ocasionalmente es muy útil.
¿Cuál es la razón fundamental que impide que esto sea parte del estándar? ¿Existe un obstáculo técnico? ¿Uno filosófico? ¿O simplemente no es suficiente para justificarlo?
Aquí hay una muestra de lo que estoy hablando:
struct vector3 {
union {
struct {
float x;
float y;
float z;
};
float v[3];
};
};
Mi compilador aceptará esto, pero advierte que "estructura / unión sin nombre" es una extensión no estándar de C ++ .