【问题标题】:define enum class with same name compared to enum [duplicate]与枚举相比,定义具有相同名称的枚举类
【发布时间】:2023-03-18 19:09:02
【问题描述】:

为什么在 c++11 中编译:

struct foo
{
  enum class Resolution { None=10, Nominal=20 };
  enum class Scale { None, Nominal };
};

虽然不是这样:

struct foo
{
  enum Resolution { None=10, Nominal=20 };
  enum Scale { None, Nominal };
};

?

【问题讨论】:

  • 你不需要把它放在一个结构中来产生这种歧义。

标签: c++11 enum-class


【解决方案1】:

在 C++11 枚举值没有作用域之前,这意味着 2 个枚举中的值不能相同。 使用enum class 时不再是这种情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 2013-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多