C++枚举变量与switch

Posted banmei-brandy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++枚举变量与switch相关的知识,希望对你有一定的参考价值。

枚举类型和变量如何定义,下篇博客讲得十分详细:

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;
	

  

以上是关于C++枚举变量与switch的主要内容,如果未能解决你的问题,请参考以下文章

c++枚举变量类型

C++ 枚举类型声明可以放在 int main 的前面吗?

c++枚举类型的枚举类型的声明

C++判断变量/对象/枚举类型的简单方式

C++数据结构——顺序栈(基本代码实现与案例)

java流程控制要点