与枚举相比,定义具有相同名称的枚举 class

define enum class with same name compared to enum

为什么在 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 枚举值未限定范围之前,这意味着 2 个枚举中的值不能相同。 使用 enum class.

时不再是这种情况