是否可以在编译时获取枚举成员的值?
事实上,我希望能够做这样的事情:
enum {
FOO_FIRST = -1,
FOO_A,
FOO_B,
FOO_C,
FOO_LAST
};
#if FOO_LAST > 10
//...
#else
//..
#endif
我知道他们cpp
不知道变量、语法错误等;只有以(对)开头的东西#
?但是枚举的成员具有固定大小,不能像 10(常量整数)值一样更改,并且编译器知道它的大小和值。那么,有没有可能进行这样的比较(就像我上面所做的那样)?我可以使用 gcc 扩展吗?
我不想用#define
s 重写我所有的枚举,也不想花时间做一些宏的改变。