/**
*cppTest-4.7:枚舉
*
*author 煒sama
*/
#include<iostream.h>
void main()
{
enum enumTest{a,b,c,d,e};//默認a=0,其他以此類推
enum enumTest et;
et=enumTest(0);//用枚舉類型給枚舉變量賦值
cout<<et<<endl;
et=b;//直接用枚舉類型裏的元素給枚舉變量賦值
cout<<et<<endl;
//et=2;//錯誤,類型不同!
et=(enumTest)2;//強制轉換就可以!
cout<<et<<endl;
et=(enumTest)5;//5不在枚舉類型中,也可以賦值!
cout<<et<<endl;
//et=(enumTest)5.0f;//float不可以!
//et=(enumTest)5.0;//double不可以!
et=(enumTest)'1';//char可以!因爲char本身就可以轉化爲int?
cout<<et<<endl;
et=(enumTest)-5;//負數可以!
cout<<et<<endl;
//可以在枚舉定義的任意元素處修改數值,值可以重複。Fri=5,Sat手動修改爲5,那Sun就變成了6!
enum week_day{Mon=1,Tue,Wed,Thu,Fri,Sat=5,Sun}today;
week_day wd=Sat;
cout<<wd<<endl;
wd=Sun;
cout<<wd<<endl;
static char *day[]={" ","Mon","Tue","Wed","Thu","Fri","Sat","Sun"};
char f;
int i=1;
while(1){
do{
cout<<"Today is "<<day[i]<<"?(y/n):";
cin>>f;
}while(!(f=='y'||f=='Y'||f=='n'||f=='N'));
today=week_day(i);
if(f=='y'||f=='Y'){
cout<<"Tomorrow is:";
if(today==Sun)
cout<<"Mon"<<endl;
else
cout<<day[int(today)+1]<<endl;
break;
}
i>6?i=1:i++;
}
}
cppTest-4.7:枚舉
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.