En this question, hay que an answer Unidos:Operador de resolución de alcance en enumeraciones ¿una extensión específica del compilador?
Puede utilizar typedef para hacer accesibles Color tipo de enumeración sin especificar que es "nombre completo".
typedef Sample::Colour Colour; Colour c = Colour::BLUE;
Eso suena correcto para mí, pero alguien abajo votó y dejó este comentario:
Usando el operador de resolución de alcance :: en las enumeraciones (como en "Color :: AZUL") es una extensión específica del compilador, no estándar C++
¿Es eso cierto? Creo que lo he usado tanto en MSVC como en GCC, aunque no estoy seguro de eso.
Hm, tienes razón. Ahora que lo pienso, lo que he usado es el equivalente a 'Sample :: BLUE', no' Color :: BLUE'. Gracias. –
Nota: no es estándar para C++ 98. Es estándar en C++ 11. –