软件的可重用性,指的是在不同软件的开发过程中重复使用相同或相像软件元素的过程。C++强调软件的可重用性,并且提供了承继机制来解决软件的可重用性问题。
4.2 单承继
4.2.1 单承继的定义方法
定义派生类的句型方式为:
class 派生类名:继承方法 基类名
派生类中的新增成员
;
继承方法称作访问方法(默认为私有),有三种:
若承继方法是public,基类成员在派生类中的访问权限保持不变,也就是说,基类中的成员访问权限,在派生类中一直保持原先的访问权限;
若承继方法是private,基类所有成员在派生类中的访问权限就会变为私有(private)权限;
若承继方法是protected,基类的共有成员和保护成员在派生类中的访问权限就会变为保护(protected)权限,私有成员在派生类中的访问权限依然是私有(private)权限。
4.2.2 派生类的成员构成
派生一个新类的过程有以下三步:
(1)接受子类成员。基类的构造函数和析构函数不能被派生类承继,其他成员函数和数据成员则必须全部承继,不能有选择地承继。
(2)改造承继的子类成员。首先是对泛型成员的访问方法的控制,这在上节已提及过。第二项改建是对泛型数据成员或成员函数的覆盖,如果是成员函数,则要求参数的个数和类型也要相同,否则就成了函数重载而不是同名覆盖。
(3)添加新成员。一般都须要重新定义派生类的构造函数和析构函数。
4.2.3 派生类成员的访问属性
参考博客:
C++三种承继方法下的访问权限控制