3月26日
一个C++中的类包含了三种成员访问权限:公开(public)、私有(private)和保护(protected)。公开成员可以由外部代码(包括类名::成员、对象.成员、new/delete运算符和派生类的定义体)访问,而私有成员只能在定义体和成员函数中访问,保护成员和私有成员的区别是可以在派生类中访问(抽象类的构造函数和析构函数——~ClassName(){}——一般就是保护成员,以确保它们只有被继承后才能实例化)。
同样的,类的继承规则包含了三种继承权限等级:私有继承、保护继承,公开继承(class 派生类: 权限等级 基类)。继承等级便是基类成员转化成派生类成员时所能拥有的最高访问权限。例如私有继承时,基类的公开成员和保护成员全部成为派生类中的私有变量,而公开继承时,基类成员的访问权限不变。
结构体(struct 类名 { 定义体 })是默认所有成员权限和继承等级都是public的类。



