我想在C中定义一个常量,以便在几个源文件中可见。
我可以通过以下方式在头文件中定义它:
> #define GLOBAL_CONST_VAR 0xFF
> int GLOBAL_CONST_VAR = 0xFF;
>一些函数保留值(例如int get_GLOBAL_CONST_VAR())
> enum {GLOBAL_CONST_VAR = 0xFF; }}
> const int GLOBAL_CONST_VAR = 0xFF;
> extern const int GLOBAL_CONST_VAR;
并在一个源文件中const int GLOBAL_CONST_VAR = 0xFF;
选项(1) – 绝对不是您要使用的选项
选项(2) – 使用头文件定义每个目标文件中的变量的实例
选项(3) – 在大多数情况下,IMO是过度杀戮
选项(4) – 在许多情况下可能不好,因为枚举没有具体类型(C 0X将增加定义类型的可能性)
所以在大多数情况下,我需要在(5)和(6)之间进行选择。
我的问题:
>你喜欢什么(5)或(6)?
>为什么(5)是好的,而(2)不是?