1, 什麼叫枚舉?
答:枚舉是由程序員定義的類型,與類或結構一樣。
注:1> 與結構一樣,枚舉是值類型,因此直接存儲它們的數據,而不是分 開存儲成引用和數據。枚舉存儲在棧中。
2> 枚舉只有一種類型的成員:命名的整數值常量。
3> 每個枚舉類型都有一個底層整數類型,默認為int。編譯器把第一個 成員賦值為0,並對每一個後續成員賦的值比前一個成員多1。
2, 枚舉在棧中排列的示例?
class Program
{
static voidMain(string[] args)
{
TrafficLight t1 = TrafficLight.Green;
TrafficLight t2 = TrafficLight.Yellow;
TrafficLight t3 = TrafficLight.Red;
Console.WriteLine("{0},{1}", t1,(int)t1);
Console.WriteLine("{0},{1}", t2, (int)t2);
Console.WriteLine("{0},{1}", t3, (int)t3);
Console.ReadKey();
}
}
enum TrafficLight
{
Green,
Yellow,
Red
}
程序輸出的結果為:
Green,0
Yellow,1
Red,2
3, 關於枚舉的補充?
因為枚舉的成員是常量,即使在沒有該枚舉類型的變量時它們也可以訪問。使用枚舉 類型名跟著一個點和成員名。
示例代碼:
class Program
{
static voidMain(string[] args)
{
Console.WriteLine("{0}", TrafficLight.Green);
Console.WriteLine("{0}", TrafficLight.Yellow);
Console.WriteLine("{0}", TrafficLight.Red);
Console.ReadKey();
}
}
enum TrafficLight
{
Green,
Yellow,
Red
}
程序輸出結果:
Green
Yellow
Red