Gor*_*r H 0 c++ enums typedef const
我认为枚举是静态的,有什么意义const enum
呢?
例如:
const typedef enum
{
NORMAL_FUN = 1,
GREAT_FUN = 2,
TERRIBLE_FUN = 3,
} Annoying;
Run Code Online (Sandbox Code Playgroud)
我有一个旧的程序,我被迫与之合作(来自设备制造商),并且我一直在讨论定义的枚举const typedef enum
.
现在,我习惯了C#,所以我并不完全理解所有正在进行的C++技巧,但这种情况似乎很简单.
从程序的编码看,似乎所有类型的变量Annoying
都要随时随地改变.
它们并不意味着不变.长话短说,编译器不喜欢它.
这个样本是在2010年之前的某个时候写回来的,所以这可能是某种版本的差异,但是const typedef enum
甚至意味着什么?
这使得type-alias Annoying
不变,因此使用该类型别名声明的所有变量都是常量:
Annoying a = NORMAL_FUN;
a = GREAT_FUN; // Failure, trying to change a constant variable
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
267 次 |
最近记录: |