在我的項目中,我有一個在類中定義的枚舉,用於整個類。在重構期間,該枚舉被移至另一個類。所以我只是typedef
編在我原來的類,像這樣:從其他類訪問枚舉值
class A {
public:
enum E {e1, e2};
};
class B {
public:
typedef A::E E;
};
現在變量定義,返回值,函數參數,可以等完美地工作。只有當我想訪問我的第二個類中的枚舉值時,我仍然必須使用surroundig類的名稱
E e = A::e1;
有沒有辦法避免這種情況,還是我必須將其複製到枚舉值的每次出現?
你將如何訪問枚舉值?我仍然必須編寫'E :: EnumType e = E :: e1;' –
您必須編寫它,我覺得這是一個小的代價,不需要重複枚舉值,只要您使E a有意義的枚舉名稱。 –