ylbtech 原文 c#中的列舉型別(enum type)
列舉型別(enum type)是具有一組命名常量的獨特的值型別。在以下示例中:
enumcolor宣告乙個名為 color 的列舉型別,該型別具有三個成員:red、green 和 blue。
列舉具體是怎麼宣告呢?列舉宣告用於宣告新的列舉型別。列舉宣告以關鍵字 enum 開始,然後定義該列舉型別的名稱、可訪問性、基礎型別和成員。具體格式:
修飾詞(new、public、protected、internal、private)enum 列舉型別名:整數型別
列舉型別一般用於列出唯一的元素,如一周的各天、國家/地區名稱,等等。下面的示例**宣告並使用乙個名為 color 的列舉型別,該列舉型別有三個常數值 red、green 和 blue。
usingsystem;//execation resultclassenumtypeexample
}static void main(string args)}}
red乙個列舉的關聯值或隱式地、或顯示地被賦值。如果列舉成員的宣告中具有 constant-expression 初始值設定項,則該常量表示式的值(它隱式轉換為列舉的基礎型別)就是該列舉成員的關聯值。如果列舉成員的宣告不具有初始值設定項,則它的關聯值按下面規則隱式地設定:blue
請按任意鍵繼續. . .
如果列舉成員是在列舉型別中宣告的第乙個列舉成員,則它的關聯值為零。否則,列舉成員的關聯值是通過將前乙個列舉成員(按照文字順序)的關聯值加 1 得到的。這樣增加後的值必須在該基礎型別可表示的值範圍內;否則,會出現編譯時錯誤。有關列舉型別成員關聯值賦值案例,參考下例:
usingsystem;//execation resultnamespacetest
classenumtype
static stringchooseday(day d)
天(即周一),工作",(uint)d);
break;
caseday.tue:
tmp = string.format("你選擇一周中的第天(即周二),工作", (uint)d);
break;
caseday.wed:
tmp = string.format("你選擇一周中的第天(即週三),工作", (uint)d);
break;
caseday.thu:
tmp = string.format("你選擇一周中的第天(即周四),工作", (uint)d);
break;
caseday.fri:
tmp = string.format("你選擇一周中的第天(即周五),工作", (uint)d);
break;
caseday.sat:
tmp = string.format("你選擇一周中的第天(即週六),休息", (uint)d);
break;
caseday.sun:
tmp = string.format("你選擇一周中的第天(即週日),休息", (uint)d);
break;
default:
tmp = "不合法";
break;
}returntmp;}}
}
你選擇一周中的第7天(即週日),休息你選擇一周中的第1天(即周一),工作
請按任意鍵繼續. . .
C 中的列舉型別(enum type)
c 中的列舉型別 enum type 列舉型別 enum type 是具有一組命名常量的獨特的值型別。在以下示例中 enum color 宣告乙個名為 color 的列舉型別,該型別具有三個成員 red green 和 blue。列舉具體是怎麼宣告呢?列舉宣告用於宣告新的列舉型別。列舉宣告以關鍵字 ...
C 中的列舉型別
c 中的列舉 列舉型別是一種的值型別,它用於宣告一組命名的常數。1 列舉的宣告 列舉宣告用於宣告新的列舉型別。訪問修辭符 enum 列舉名 基礎型別 基礎型別必須能夠表示該列舉中定義的所有列舉數值。列舉宣告可以顯式地宣告 byte sbyte short ushort int uint long 或...
C 中列舉型別
列舉型別是一種的值型別,它用於宣告一組命名的常數。1 列舉的宣告 列舉宣告用於宣告新的列舉型別。訪問修辭符 enum 列舉名 基礎型別 基礎型別必須能夠表示該列舉中定義的所有列舉數值。列舉宣告可以顯式地宣告 byte sbyte short ushort int uint long 或 ulong ...