传统的枚举,其中两个枚举中定义的枚举量可能会发生冲突。假设有一个处理鸡蛋和T恤的项目,其中包含类似的代码。
enum egg {small,medium,large,jumbo}
enum t_shirt{small,medium,large,jumbo}
这将无法通过编译,因为egg中的small 和 t_shirt中的small位于相同的作用域中,这会引发冲突。解决方案:创建枚举量作用域为类的枚举
enum class egg {small,medium,large,jumbo}
enum class t_shirt{small,medium,large,jumbo}