物聯網/嵌入式工程師
重磅升級:新增硬件電路設計與實戰,讓你軟硬通吃,同級PK無敵!行業風口、政策傾斜,新晉熱門高薪不內卷!0基礎一站式就業完整路徑,搶占先發優勢!
有的同學可能會想到用一個 int 變量來存放,星期一就用數字 1 表示,星期二就用數字 2 表示,以此類推,星期天就用數字 7 來表示
#include <stdio.h> int main(int argc,char **argv) { int week = 1; // 1 來表示星期一 return 0; }
這樣做肯定是行得通的,但是有些時候如果不注意,會產生一些問題。例如:
#include <stdio.h> int main(int argc,char **argv) { int week = 1; // 1 來表示星期一 week = 8; return 0; }
也許你寫程序寫著寫著突然昏了頭,將 week 賦值成了 8,那么這段程序是完全可以運行的,但是將會造成不可預期的 bug。
那么在 C++ 中,我們應該如何處理這些例如星期這樣,已經可以確定數據具體有哪些的數據呢?
為了能讓我們在處理這些數據的時候更加清晰明了,減少犯錯誤的機會,C++ 內置了一種特殊的類型,那就是枚舉類型。
那么我們就還是用星期為例,先來定義一個星期枚舉類:
enum Week { Mon, // 星期一 Tue, // 星期二 Wed, // 星期三 Thu, // 星期四 Fri, // 星期五 Sat, // 星期六 Sun, // 星期日 };
那么應該如何讓使用呢?
enum Week { Mon, // 星期一 Tue, // 星期二 Wed, // 星期三 Thu, // 星期四 Fri, // 星期五 Sat, // 星期六 Sun, // 星期日 }; int main(int argc,char **argv) { Week week = Week::Fri; return 0; }
在這段程序里,week 這個枚舉變量,只能是定義好的 7 個值,不能是其他的值,而且在賦值的時候,你可以直接看出來這個值是什么,而不用再去和數字進行對應。這樣就可以最大限度得減少出錯的可能性了。
對于例如星期,季節,性別之類的概念,我們應該優先使用枚舉類型。
請驗證,完成請求
由于請求次數過多,請先驗證,完成再次請求
打開微信掃碼自動綁定
綁定后可得到
使用 Ctrl+D 可將課程添加到書簽
舉報