打印出一个静态的;不赞成;当使用特定的枚举标识符时,是否显示警告消息以及建议的更正? 在我们合作中的许多地方使用的C++库中,我们错误地在同一个LIB命名空间中定义多个枚举来定义常量值。枚举是不同的类型,但不是不同的命名空间。因此,所有枚举值最终都位于同一命名空间中。这是一个开放的枚举标识符冲突门,在使用自动完成时也不方便。为了解决这个问题,我们正在考虑在不同的名称空间中移动不同的枚举

打印出一个静态的;不赞成;当使用特定的枚举标识符时,是否显示警告消息以及建议的更正? 在我们合作中的许多地方使用的C++库中,我们错误地在同一个LIB命名空间中定义多个枚举来定义常量值。枚举是不同的类型,但不是不同的命名空间。因此,所有枚举值最终都位于同一命名空间中。这是一个开放的枚举标识符冲突门,在使用自动完成时也不方便。为了解决这个问题,我们正在考虑在不同的名称空间中移动不同的枚举,c++,C++,为了使用这个库简化代码的演化,我们希望能够在编译时显示一条“deprecate”警告消息,当代码中遇到旧的枚举标识符时,提示代码更改 以下问题和答案提供了一种在满足条件时定义不推荐警告的方法。当用户代码中出现枚举标识符时,如何实现相同的效果

为了使用这个库简化代码的演化,我们希望能够在编译时显示一条“deprecate”警告消息,当代码中遇到旧的枚举标识符时,提示代码更改


以下问题和答案提供了一种在满足条件时定义不推荐警告的方法。当用户代码中出现枚举标识符时,如何实现相同的效果我使用的是g++。“属性说明符列表可以作为结构、联合或枚举说明符的一部分出现。”并且deprectate属性可以有一个(msg)参数。我仍然必须测试在使用某个枚举标识符时是否打印了警告。这似乎是我一直在寻找的答案。非常感谢你。