所以枚举的工作方式如下:
enum {
false,
true
}
这相当于
int false = 0
int true = 1
我为什么不替代enum
with #define
?
#define FALSE 0
#define TRUE 1
对我来说,它们似乎是可以互换的。我知道#define
能够处理参数,因此以完全不同的方式运行enum
。具体主要用途是什么enum
当我们有#define
在这种情况下?
如果我猜的话,作为#define
是一个预处理器功能,enum
会有一些运行时优势。我离这还有多远?
提前致谢。
优点enum
当您有一长串要映射到数字的内容,并且您希望能够在该列表的中间插入一些内容时,就会出现。例如,您有:
pears 0
apples 1
oranges 2
grapes 3
peaches 4
apricots 5
现在你想把tangerines
after oranges
. With #define
s,你必须重新定义的数量grapes
, peaches
, and apricots
。使用枚举,它会自动发生。是的,这是一个人为的示例,但希望它能给您带来启发。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)