Chinaunix首页 | 论坛 | 博客
  • 博客访问: 127242
  • 博文数量: 52
  • 博客积分: 85
  • 博客等级: 民兵
  • 技术积分: 250
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-28 09:25
文章分类
文章存档

2013年(4)

2012年(48)

分类: LINUX

2013-09-02 15:32:45

(1)从处理过程的角度看:

#define宏是由编译预处理器在预编译处理时处理的,而且只做简单的字符串的替换。枚举常量则是在编译的时候确定其值的。

(2)从调试的角度看:

通常情况下,在编译器里,可以调试枚举常量,而不能调试宏常量。

(3)从数据的类型看:

#define可以编译任意类型的常量,而枚举只能是定义整型常量。

(4)从代码编写角度看:

枚举可以一次定义大量常量,而#define宏只能一次定义一个。

(5)从可维护性来看:

枚举可以集中管理数据,具相同属性的整形数据可使用枚举,枚举可实现取值的自增,也可指定每个枚举的值,编写代码跟容易,相对来说能减少出错的机会,也便于代码的后期维护和修改。

(6)枚举的取值范围已经限定了,容易进行参数的检查,而define没有这种检查

阅读(2304) | 评论(0) | 转发(0) |
0

上一篇:c枚举的使用

下一篇:没有了

给主人留下些什么吧!~~