_C++的枚舉


       C語言中枚舉本質就是整型,枚舉變量可以用任意整型賦值。而 C++中枚舉變量,只能用被枚舉出來的元素初始化。
      
       例如我們定義如下枚舉:
       enum season
       {
           SPR,
           SUM,
           AUT,
           WIN
       };

      在main函數中使用:
      int main(void)
      {
          enum season s = SPR;
 
          return 0;
       }



       按照枚舉被髮明的初衷,s應該只能等於 SPR、SUM、AUT或WIN,可在C語言中,
       enum season s = 100;
       這樣的定義是可以的:
       

       而在C++中,是編譯不過去的:
   
    

       我們再來看看枚舉的副作用:

       在C語言中我們常常使用define來定義常量,而在C++中則常使用enum枚舉:
      

       在代碼中我們可以看到,SPR被賦予了0,後面的也被依次按順序賦值。

       不過我們在使用C++的枚舉時,常常省略season,直接這樣:
       

       當然我們也可以改變枚舉裏面元素的值:
       
       這樣同樣會使枚舉裏的其他元素相應的改變。




                                                                                                      Kyrie Irving___全.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章