Bootstrap

C++继承

1.三种继承方式

C++继承分为公有继承(public),保护继承(protected)和私有继承(private);

(1)公有继承(public)

        基类的共有成员和保护成员作为派生类的成员时,保持原有状态,而基类的私有成员仍旧是私有的,不能被这个派生类所访问;

(2)保护继承(protected)

        基类的公有成员和保护成员都变成派生类的保护成员,只能被派生类的成员函数或友元访问,基类的私有成员仍旧是私有的;

(3)私有继承(private)

        基类的公有成员和保护成员都变成派生类的私有成员,不能被这个派生类所访问;

继承方式 基类的public成员 基类的protected成员 基类的private成员 继承引起的访问控制关系变化
公有继承public 派生类的public成员 派生类的protected成员 不可见 基类的非私有成员在派生类中的访问属性不变
保护继承protected 派生类的protected成员 派生类的protected成员
;