C++枚举类的使用
枚舉是一種由編程者自定義的數據類型如果一個變量只有幾種可能的取值,則可以定義為枚舉類,比如一周只有七天,一個電腦城只有幾種固定的品牌的電腦
enum 枚舉類型名 標識符;
#include<iostream> void main(){enum Weekday {sun,mon,tue,wed,thu,fri,sat};Weekday day1, day2;int in1, in2;cout << "請輸入兩個0到6之間的整數:";cin >> in1 >> in2;day1 = (Weekday)in1;//in1和in2只能是枚舉類型里的幾種情況day2 = (Weekday)in2;if (day1 == day2) {cout << "您輸入的都是";switch (day1) {case sun:cout << "周日\n"; break;case mon:cout << "周一\n"; break;case tue:cout << "周二\n"; break;case wed:cout << "周三\n"; break;case thu:cout << "周四\n"; break;case fri:cout << "周五\n"; break;case sat:cout << "周六\n"; break;}}else{cout << "您輸入的兩天分別是";switch (day1){case sun:cout << "周日和"; break;case mon:cout << "周一和"; break;case tue:cout << "周二和"; break;case wed:cout << "周三和"; break;case thu:cout << "周四和"; break;case fri:cout << "周五和"; break;case sat:cout << "周六和"; break;}switch (day2){case sun:cout << "周日\n"; break;case mon:cout << "周一\n"; break;case tue:cout << "周二\n"; break;case wed:cout << "周三\n"; break;case thu:cout << "周四\n"; break;case fri:cout << "周五\n"; break;case sat:cout << "周六\n"; break;}}}枚舉類在很多語言里都有出現,使用方法和規范幾乎都大同小異,在日常的開發中實用性應該挺強的。
聲明了枚舉類就可以定義枚舉變量了,方法如下:
enum? 枚舉類型名 標識符;
例如:enum Weekday aday;
也可以把聲明枚舉類型和定義枚舉類型變量和為一步這時可以不用聲明枚舉類型名:
enum {變量值列表} 標識符;
例如:{sum,mon,tue,wed,thu,fri,sat} aday;
變量aday的值只能是sun到sat之一,
例如:aday=sat;
聲明枚舉類型時,變量值列表中的標識符是一些符號常量,每一個都對應一個確定的整數型。第一個符號常量的值為0,第二個符合常量的值為1,以此類推。
也可以在聲明枚舉類型時自行指定符號常量的值,指定的值必須是整數
例如:enum Weekday{sun,mon,tue=5,wed,thu,fri,sat};
其中,sun=0,mon=1,tue=5,wed=6,thu=7,fir=8,sat=9;
不能把一個整數值直接賦值給以惡搞枚舉類型變量,下面的語句是錯誤的:
aday=2;(錯誤)
但是可以通過強制轉換將整數值賦值給枚舉類型的變量:
aday={Weekday}2;
枚舉類型變量之間可以進行關系運算。
總結
- 上一篇: 数据分析之布林带
- 下一篇: 添加布林带择时策略有多便捷!股票量化分析