枚舉類型和變量如何定義,下篇博客講得十分詳細:
https://blog.csdn.net/bruce_0712/article/details/54984371
有幾個需要注意的點:
(1)在不進行強制類型轉換的前提下,枚舉量只能由枚舉類型賦值。但是,可以把枚舉量賦給其它類型(枚舉量被強制轉換為整型)。
(2)枚舉量沒有賦初值的話,會自動從0開始,按從小到大的順序,以整數的形式初始化。
即
enum enumType {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};
Monday~Sunday 會默認為0~6。將其中某個賦初值的話,下一個枚舉量也會自動向上遞增。
(3)枚舉類型常和switch分支搭配使用。
自己簡單練習了一下。用戶輸入0-5的數字來選擇工作日,輸出當天的安排。
#include<iostream> using namespace std; typedef enum workday { Sunday = 0, Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4, Friday = 5, }; void chooseday(workday tempday); int main() { int today; cin >> today; chooseday(workday(today)); system("pause"); } void chooseday(workday tempday) { switch (tempday) { case Sunday: { cout << "Work,and go shopping." << endl; break; } case Monday: { cout << "Work,and read books." << endl; break; } case Tuesday: { cout << "Travel." << endl; break; } case Thursday: { cout << "Work,and visit friends." << endl; break; } case Friday: { cout << "Have a party." << endl; break; } default: cout << "Wrong input!" << endl; break; } }