如何使用一个类的嵌套枚举作为另一个类的嵌套枚举?

Mih*_*yan 6 c++ enums

下面的代码将在线提供编译错误,enum en = A::en;但它描述了我想要做的事情(使嵌套枚举A也成为嵌套枚举B).

#include <iostream>
using namespace std;
struct A
{
    enum a_en{X = 0, Y = 1};
};
struct B
{
    enum b_en = A::a_en; //syntax error
};
int main()
{
    cout << B::X << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

所以问题是如何在c ++中做这样的事情?

Bo *_*son 5

将枚举放在A和B都可以继承的基类中.