我不明白爲什麼我的成員沒有初始化。我有這樣的事情:C++構造函數中超類的init成員
class A
{
public:
A() {member = 0;}
int getMember() {return member;}
protected:
int member;
}
和
class B : public A
{
public:
B() : A() {member = 10;}
}
當我嘗試從B檢查始終爲0 什麼我錯過這裏得到成員的價值?
謝謝!
編輯:Ctor現已公開。
@克里斯檢查代碼:這仍然會構建'B'對象並且儘可能地將'10'分配給'member'。不過,如果不是的話,我想開悟。 –
構造函數是私人的..所以我假設你不能有新的B(); 我有一段時間沒有做C++ ..所以我可能是錯的。 –
@LewsTherin:你說得對。這指向發佈的代碼不是真正的代碼,在這種情況下,行爲可能來自引用示例中未顯示的方面。 –