Доступ к защищенным данным членов базового класса из производного класса

У меня есть базовый класс и производный класс. Мне нужно получить доступ к защищенному члену базового класса в производном классе. Однако 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
}
}

0

Решение

Я не мог полностью понять ваш вопрос, но исправляя синтаксические ошибки, должно работать следующее:

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
3

Другие решения

Других решений пока нет …