有这样一种情况:
class Class1 {
protected:
virtual void setup();
};
class Class2 : public Class1 {
};
在第一个类中,该方法被setup()声明为protected,也就是说,除了同一个类之外,子类也可以使用它。然后,这是一个虚方法,它将在子类中被覆盖。我可以在二等舱中将其声明为私有吗?
class Class2 : public Class1 {
private:
void setup() {
...
}
};
你当然可以。
Class2除了他自己和他的朋友之外,任何人都无法使用此功能。或者你可以声明它
public,它可以从外部调用。但仅对于Class2,通过Class1这种方式使用虚拟性是行不通的。