(这是一个C++的答案.在C语言中,使用宏有一个很大的优势,那就是它们几乎是获得真正常量表达式的唯一方法.)
使用
#define声明常量有什么好处?
没有一个.
我看到很多程序
#define在开始时使用.
是的,那里有很多不好的代码.其中一些是遗留的,其中一些是由于无能.
为什么我不应该声明一个常量全局变量呢?
你应该.
一个const对象不仅是一成不变的,但有一个类型,是更容易调试,跟踪和诊断,因为它实际上在编译时存在的(并且,重要的是,在调试版本都有一个名字).
此外,如果您遵守单一定义规则,则在更改宏的定义并忘记按字面意思重新编译整个项目时,您不必担心会导致全能的palaver,以及任何依赖的代码那个项目.
并且,是的,具有讽刺意味的是,const对象仍被称为"变量"; 当然,在实践中,它们丝毫不变.
| 归档时间: |
|
| 查看次数: |
1300 次 |
| 最近记录: |