126、C++中类成员的访问权限和继承权限问题

1) 三种访问权限

① public:用该关键字修饰的成员表示公有成员,该成员不仅可以在类内可以被访问,在类外也是可 以被访问的,是类对外提供的可访问接口;

② private:用该关键字修饰的成员表示私有成员,该成员仅在类内可以被访问,在类体外是隐藏状态;

③ protected:用该关键字修饰的成员表示保护成员,保护成员在类体外同样是隐藏状态,但是对于该类的派生类来说,相当于公有成员,在派生类中可以被访问。

2) 三种继承方式

① 若继承方式是public,基类成员在派生类中的访问权限保持不变,也就是说,基类中的成员访问权 限,在派生类中仍然保持原来的访问权限;

② 若继承方式是private,基类所有成员在派生类中的访问权限都会变为私有(private)权限;

③ 若继承方式是protected,基类的共有成员和保护成员在派生类中的访问权限都会变为保护 (protected)权限,私有成员在派生类中的访问权限仍然是私有(private)权限。

原文地址:https://www.cnblogs.com/crbhf/p/15028495.html