私のプロジェクトでは、そのクラス全体で使用されているクラスでenumが定義されています。リファクタリング中、その列挙型は別のクラスに移動されました。だから私は単にtypedef
このように、私の元のクラスでそれを編:他のクラスからのenum値へのアクセス
class A {
public:
enum E {e1, e2};
};
class B {
public:
typedef A::E E;
};
今変数定義、戻り値、関数のparamsなどは完璧に動作します。 2番目のクラスの列挙型の値にアクセスする必要がある場合のみ、サセリグクラスの名前である
などで修飾する必要があります。 E e = A::e1;
これを回避する方法はありますか、それを列挙型の値が出現するたびにコピーする必要がありますか?
そして、どのようにenum値にアクセスしますか?私はまだ 'E :: EnumType e = E :: e1;'と書かなければなりません。 –
あなたはそれを書かなければなりません。列挙の意味のある名前。 –