W klasach C++ klasa pochodna może dziedziczyć zmienną z klasy nadrzędnej. Jak zdefiniować pochodną klasy tak, aby var2
nie została odziedziczona w derivclass
?Jak nie dziedziczyć zmiennej w klasach C++
class mainclass{
public:
int var1;
char var2;
void test(){
cout<<var1<<var2<<endl;
}
}
class derivclass : mainclass{
public:
void test(){
cout<<var1<<var2<<endl;
//want a compiler error here that var2 is not defined
}
}
Make it 'private'. Nie można uniknąć dziedziczenia, jeśli członek jest "publiczny". –
jeśli zdefiniujesz go jako 'prywatny' w' mainclass', to 'derivclass' nie będzie mógł go dotknąć, ale nadal będzie istnieć * – Dave
prywatne słowo kluczowe zrobiłoby. –