讀【157個完美化C#的建議】一書的理解筆記 - 007
重點: enum使用時如果要賦予數值由0開始
流程說明 |
1. 為什麼 |
2. 範例說明 (程式編譯器皆自動從0設定) |
3. 結論 |
1. 為什麼
建議:將 0 設為列舉的預設值
理由: 1.軟體工程界中的一致性,大都默認為0為起始值 ※除非工作團隊名定義規則
理由: 2.程式編譯器皆自動從0設定
2. 範例說明 (程式編譯器皆自動從0設定)
我們有以下Enum的宣告 ,將星期一設為 1 以此遞增一周的資料
/// <summary>
/// 一周的Enum 但由 1 開始 ※反語法,請別從1開始設
/// </summary>
private enum MyWeek
{
Monday = 1,
Tuesday = 2,
Wednesday = 3,
Thursday = 4,
Friday = 5,
Saturday = 6,
Sunday = 7
}
以下全域宣告
static MyWeek week;
可以編譯以下程式碼,得到的值為 0
※這就是因為編譯器自動幫我們帶預設值0
int getValue = (int)week;
3. 結論
enum使用時如果要賦予數值由0開始,理由可以參考流程1.為什麼
※如果發現enum 有從非0開始設定,最好需要與團隊構通,確認資料定義的原由,認知上是有背景故事的。
github連結(Vs2015) : 點我下載