在C ++中你可以这样做
enum class Colors {black, blue, green, cyan, red, purple, yellow, white};
Colors mycolor;
mycolor = Colors::blue; // this is what I want to do
在C
中,是否可以使用EnumName::tag
引用枚举?
答案 0 :(得分:2)
在C中,是否可以使用EnumName :: tag?
引用枚举
不,不是。阅读C11标准,例如n1570草案(§6.7.2.2)
在实践中,C程序员有很多约定,例如对某些enum
中的所有标记使用一些公共前缀。
例如,GTK enum GtkShadowType
的所有标记都以GTK_SHADOW_
开头