簡體   English   中英

從派生類訪問基類的受保護數據成員

[英]Access protected data members of the base class from the derived class

我有一個基類和派生類。 我需要訪問派生類中基類的受保護成員。 但是,Eclipse不允許我訪問數據成員,就好像它是派生類的成員一樣,而不必關心它是被繼承的。 我怎么做?

class BaseClass {
protected:
static int a;
int b;
}


class DerivedClass: public BaseClass {    
void SomeMethod {    
a=10; // cannot resolve symbol
b=10; // cannot resolve symbol
BaseClass::a=10; //does not complain
BaseClass::b=10; //does not complain    
}
}

我無法完全理解您的問題,但是解決了語法錯誤,以下方法應該起作用:

class BaseClass {
protected:
static int a;
int b;
}; // <-- Missing semicolon

int BaseClass::a = 0; // Define static member

class DerivedClass: public BaseClass {    
void SomeMethod() { // <-- Missing ()
a=10;
b=10; 
}
};// <-- Missing semicolon

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM