Với các lớp C++, bạn có thể có một lớp dẫn xuất kế thừa một biến từ lớp cha của nó. Làm thế nào tôi có thể xác định lớp dẫn xuất để var2
không được kế thừa trong derivclass
?Làm thế nào để không kế thừa một biến trong các lớp 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 nó 'private'. Bạn không thể tránh thừa kế nếu thành viên là 'công khai'. –
nếu bạn định nghĩa nó là 'private' trong' mainclass', thì 'derivclass' sẽ không thể chạm vào nó, nhưng nó vẫn sẽ * tồn tại * – Dave
từ khóa riêng tư sẽ làm. –