iT邦幫忙

2022 iThome 鐵人賽

DAY 21
0
Software Development

如果可以,我想用30天的時間打造一間抵霸閣系列 第 21

[Day21]抵霸閣-列舉型別的基本介紹

  • 分享至 

  • xImage
  •  

Enum(列舉)可以增加程式的可讀性
而其內容也可以放像是int,long,byte等等型別的資料
也可將其視為旗標來使用
像是在宣告enum的上方加上[Flags]
便可以減少一大堆bool變數的宣告
藉此減少不必要的記憶體浪費
我個人最喜歡的功能是在visual studio宣告enum後
往後直接把游標移到變數上面就可以看到其值 非常清楚明瞭
而且只要打enum的名稱後
就可以看到提示字列出所有這個enum內包含的變數
就不怕打錯字

宣告的方式如下
(以下以C#為例)

public enum Animal
{
    Bee,     //預設值=0
    Monkey,  //預設值=上一筆資料的值遞增;也就是1
    Ant      //預設值=上一筆資料的值遞增;也就是2
}

呼叫enum裏頭的變數則是像這樣

Animal a = Animal.Bee (Animal.變數名稱);
(int)a  // 若將其轉換為 int的話,印出(int)a便會得到0
a.ToString() // 若將其轉換為 string的話,印出a.ToString()便會得到Bee

其實就可以不用寫註解
直接從程式碼知道這段的功能在做什麼
其中預設值是可以改的
只是修改前可以思考一下目的是什麼
才不會讓值域變來變去


上一篇
[Day20]抵霸閣-未來變數太多,我們能做的就是在這城市找到生存規則
下一篇
[Day22]抵霸閣-今晚要不要來一點static
系列文
如果可以,我想用30天的時間打造一間抵霸閣30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言