首页 > 代码库 > 宏定义、const变量、枚举的区别

宏定义、const变量、枚举的区别


1.宏定义是在预处理阶段进行展开;cnost变量是在编译运行阶段使用

2.宏定义没有类型,不做任何类型检查,仅仅是进行展开;const修饰的变量具有具体的类型,编译阶段执行检查

3.宏定义在文件中有多少次就展开多少次,不会分配内存空间;const修饰的变量会在内存中分配空间


1.枚举属于常量;但宏定义不是常量

2.枚举常量是实体的一种;但宏定义不是实体

3.枚举具有类型,但宏定义没有类型,枚举与普通变量有作用域和值,但宏定义没有,它是一种预处理替换

宏定义、const变量、枚举的区别