C++借助宏来实现由枚举值得到枚举变量名的字符串

2023-05-16

定义一个枚举

enum color
{
	RED = 0, 
	GREEN,
	YELLOW
}

在文件开始部分添加宏

#define GET_ENUM_NAME(value) case value:return (#value); 

然后写个方法来获得字符串

string get_color_name(color x)
{
	switch (x)
	{
		GET_VALUE_NAME(RED );
		GET_VALUE_NAME(GREEN);
		GET_VALUE_NAME(YELLOW);
	default:
		return "";
		break;
	}
}

使用:

	cout << get_color_name((color)(1));
	cout << get_color_name(GREEN);
	cout << get_color_name(YELLOW);

输出:

RED
GREEN
TELLOW
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++借助宏来实现由枚举值得到枚举变量名的字符串 的相关文章

随机推荐