这块我咋看不懂?
enum Week { Mon, // 星期一 Tue, // 星期二 Wed, // 星期三 Thu, // 星期四 Fri, // 星期五 Sat, // 星期六 Sun, // 星期日 }; int main(int argc,char **argv) { Week week = Week::Fri; return 0; }
enum Week { Mon, // 星期一 Tue, // 星期二 Wed, // 星期三 Thu, // 星期四 Fri, // 星期五 Sat, // 星期六 Sun, // 星期日 }; int main(int argc,char **argv) { Week week = Week::Fri; return 0; }
2021-10-16
enum Week { (对应下标从0开始) Mon, // 星期一 0 Tue, // 星期二 1 Wed, // 星期三 2 Thu, // 星期四 3 Fri, // 星期五 4 Sat, // 星期六 5 Sun, // 星期日 6 };
枚举创建了一个星期类,
Week week = Week::Fri;
创建一个Week型的变量,变量名为week,
::是作用域符号
将Week里的Fri所对应的下标赋值给week这个变量;
你可以cout或者printf打印一下代码中的week,
cout<<week;
会输出4;
事先创建枚举是为了防止后期粗心将 week 赋值成了 8,
int week = 1; // 1 来表示星期一 week = 8; // 8 星期八 ?
毕竟一周只有7天,
这段程序是完全可以运行的,但是将会造成不可预期的 bug。
举报