面试题答案
一键面试public继承
- Base类的public成员:在Derived类中仍然是public成员,派生类对象及类外代码都可以访问。
- Base类的protected成员:在Derived类中是protected成员,派生类成员函数和友元函数可以访问,类外代码不能访问。
- Base类的private成员:在Derived类中不可访问,即使是派生类成员函数和友元函数也不能访问。
protected继承
- Base类的public成员:在Derived类中变为protected成员,派生类成员函数和友元函数可以访问,类外代码不能访问。
- Base类的protected成员:在Derived类中仍然是protected成员,派生类成员函数和友元函数可以访问,类外代码不能访问。
- Base类的private成员:在Derived类中不可访问,即使是派生类成员函数和友元函数也不能访问。
private继承
- Base类的public成员:在Derived类中变为private成员,只有派生类成员函数和友元函数可以访问,类外代码不能访问。
- Base类的protected成员:在Derived类中变为private成员,只有派生类成员函数和友元函数可以访问,类外代码不能访问。
- Base类的private成员:在Derived类中不可访问,即使是派生类成员函数和友元函数也不能访问。