【问题标题】:Difference between enum and enum class [duplicate]枚举和枚举类之间的区别[重复]
【发布时间】:2016-01-02 09:47:03
【问题描述】:

谁能解释一下两者的区别

enum 
{Type1,type2}

还有

enum class
{Type1, type2}

我经常使用前者(可能过于频繁而没有足够的封装),但我从未使用过第二个示例。

谢谢

枚举

【问题讨论】:

标签: c++


【解决方案1】:

enum 只是将其内容溢出到封闭范围内,基本上是一个 const 静态整数。这意味着使用 == 运算符时,任何默认枚举的第一个元素都是相同的。

枚举类有自己的作用域,不会污染它们所在的命名空间。它们还确保任何枚举类中的第一个元素不相等。

如果你有一个支持枚举类的编译器(目前任何主要的编译器),那么更喜欢枚举类,因为它们有好处

如果您想了解更多信息,请转到此处:

http://en.cppreference.com/w/cpp/language/enum

【讨论】:

    猜你喜欢
    • 2013-10-27
    • 2017-04-19
    • 1970-01-01
    • 2016-11-26
    • 1970-01-01
    • 2014-11-27
    • 2018-09-25
    • 1970-01-01
    相关资源
    最近更新 更多