【发布时间】:2011-03-30 14:57:35
【问题描述】:
是否可以将枚举值标记为已弃用?
例如
enum MyEnum {
firstvalue = 0
secondvalue,
thirdvalue, // deprecated
fourthvalue
};
二等奖的解决方案是 ifdef 一个 MSVC 和一个 GCC 解决方案。
【问题讨论】:
-
你想要发生什么?只要重命名,编译器就会报错...
-
@Lindydancer:但这有点过时了,不是吗?我认为重点是允许现有代码编译,但发出有关已弃用资源的警告。
-
@Lindydancer:如果足够的话,类、函数、类型也不需要弃用......
-
是否有可能 1) 重命名已弃用的枚举值,2) #define 一个将已弃用的令牌映射到重命名的令牌的宏,但还包括一些警告文本,如编译指示或其他内容?
-
希望正确的解决方案/hack 也适用于 C++0x 中的作用域枚举 =]
标签: c++ enums deprecated