如何在c ++

时间:2019-11-07 09:23:17

标签: c# c++

因此在学习c ++之前,我已经对c#语言有相当的经验。在C#中,我能够创建一个包含该程序枚举的枚举类。我想知道如何在c ++中创建枚举类。我正在使用netbean 8.2编写代码。我对枚举类的意思不是某个类中的枚举,而是整个类本身就是枚举。

编辑:我设法弄清楚了。谢谢所有帮助的人。

2 个答案:

答案 0 :(得分:3)

我们可以简单地做到这一点:

int main()
{
   enum class Color // "enum class" defines this as a scoped enumeration instead of a standard enumeration
   {
      RED, // RED is inside the scope of Color
      BLUE
   };

   enum class Language
   {
      ENGLISH, // ENGLISH is inside the scope of Language
      ITALIAN
   };

   Color color = Color::RED; // note: RED is not directly accessible any more, we   have to use Color::RED
   Language language = Language::ENGLISH; // note: ENGLISH is not directly accessible any more, we have to use Language::ENGLISH
}

答案 1 :(得分:0)

枚举是一种独特的类型,其值被限制在一个值的范围内,该值的范围可能包含几个明确命名的常量(“枚举器”)。常量的值是称为枚举的基础类型的整数类型的值。 使用以下语法(c ++)定义枚举:

 enum-key attr(optional) enum-name enum-base(optional) ; 

每个枚举器都成为枚举类型(即名称)的命名常量,在封装范围内可见,并且可以在需要常量时使用。

enum Color { red, green, blue };
    Color r = red;
    switch(r)
    {
        case red  : std::cout << "red\n";   break;
        case green: std::cout << "green\n"; break;
        case blue : std::cout << "blue\n";  break;
    }

有关更多详细信息:[https://en.cppreference.com/w/cpp/language/enum]