【发布时间】:2016-07-19 01:44:47
【问题描述】:
我有点困惑。在我们的生产环境中,已经定义的宏很少。这些宏用于返回一些值。现在我们的要求是根据这些宏的值准备一些查找。我创建了 char* 数组并在适当的索引处定义了一些字符串。但是我的经理要求我将这些宏转换为枚举类型,然后进行查找。如何使用枚举实现这一点?这样做有什么好处?这些宏被用于许多不同的文件中。如果我定义了枚举类型,我是否必须更改任何内容? 提前致谢!
示例代码:
#define macro_1 1
#define macro_2 2
#define macro_3 3
#define macro_4 4
查找:
const char* lookup[] = {.....};
【问题讨论】:
-
一个直接的优势是使用数组需要顺序增加的宏值(即 0、1、2、3、4,...)。使用枚举时,值可以是任意整数。
-
@Rushy Panchal:感谢您的及时帮助。你能给我举个例子吗?是否可以使用枚举类型进行查找?如何在枚举中定义字符串?