有一个现有枚举地图一个枚举另一个枚举
typedef enum
{
myEnum_front = 11,
myEnum_back = 19
} myEnumSides;
我想创建另一个枚举new_myEnumSides
,它的价值应该被映射到为myEnumSides
值。因此,我会使用new_myEnumSides
而不是myEnumSides
。 为此目的,代码是否正确?
typedef enum
{
new_myEnum_front = myEnumSides::myEnum_front,
new_myEnum_back = myEnumSides::myEnum_back
} new_myEnumSides;
或者还有更好的方法吗?
我能问你为什么要这样做吗? – Aesthete
新的枚举将用于可能会暴露给客户的层中。 – ontherocks
看起来没问题,只是'typedef'语法是不必要的:'enum myEnumSides {....};'。另外,'::'语法只适用于C++ 11类的枚举。令人讨厌的C++ 03枚举值生活在全局命名空间中。 – juanchopanza