条款42: 明智地使用私有继承
第一个规则是,和公有继承相反,如果两个类之间的继承关系为私有,编译器一般不会将派生类对象(如Student)转换成基类对象(如Person)
第二个规则是,从私有基类继承而来的成员都成为了派生类的私有成员,即使它们在基类中是保护或公有成员,即派生类对象不能访问基类的所有成员
class person{}; class student :private person{}; void dance(const person &p); person p; student s; void main() { dance(p);//正确 dance(s);//出错 }