一個合法性的困惑,我的C++一個新人,我的問題可能是愚蠢的:繼承
我們類A,B和C的定義如下:
class A {
public:
typedef Resouce Money;
};
class B
:public A {
};
class C {
public:
typedef B::Money MyMoney;
};
這是有效的?我很困惑,因爲'錢'沒有在B類中明確定義。
在此先感謝!
一個合法性的困惑,我的C++一個新人,我的問題可能是愚蠢的:繼承
我們類A,B和C的定義如下:
class A {
public:
typedef Resouce Money;
};
class B
:public A {
};
class C {
public:
typedef B::Money MyMoney;
};
這是有效的?我很困惑,因爲'錢'沒有在B類中明確定義。
在此先感謝!
公共(或受保護)基類的所有公共和受保護成員都是派生類的可訪問成員。 「成員」包含成員變量,成員函數和成員類型,「類型」包含類型別名和新定義的類型。
所以確實會員A::Money
也可作爲B::Money
。
謝謝〜非常好的總結:) – Brian
'g ++ -c -Wall test.cpp'沒有提供任何錯誤。 –
@Joachim Isaksson你是對的。這是有效的。謝謝。 – Brian