C++语言程序设计教程与实验 第十章继承与派生 private //新增私有数据成员 int passenger load float weight load pulic //新增公有成员函数 void init truck(int, float int passengers o float weight loads
{ private: //新增私有数据成员 int passenger_load; float weight_load; puclic: //新增公有成员函数 void init_truck(int,float); int passengers(); float weight_loads(); }; C++语言程序设计教程与实验 第十章 继承与派生
C++语言程序设计教程与实验 第十章继承与派生 (3)添加新的成员 继承与派生机制的核心是在派生类中加入 新的成员,程序员可以根据实际情况的需要 ,给派生类添加适当的数据成员和成员函数, 来实现必要的新功能。同时,在派生的过程中 基类的构造函数和析构函数是不能被继承下 来的。在派生类中,一些特殊的初始化和扫尾 清理工作,也需要重新加入新的构造函数和析 构函数
(3) 添加新的成员 继承与派生机制的核心是在派生类中加入 新 的成员,程序员可以根据实际情况的需要 ,给派生类添加适当的数据成员和成员函数, 来实现必要的新功能。同时,在派生的过程中 ,基类的构造函数和析构函数是不能被继承下 来的。在派生类中,一些特殊的初始化和扫尾 清理工作,也需要重新加入新的构造函数和析 构函数。 C++语言程序设计教程与实验 第十章 继承与派生
C++语言程序设计教程与实验 第十章继承与派生 10.1.3类的继承方式 在面向对象程序中,基类的成员可以有 public(公有) protected(保护)和 private(私有)三种访问类型。在基类 内部,自身成员可以对任何一个其它成员进行访问,但是通过 基类的对象,就只能访问基类的公有成员。 派生类继承了基类的全部数据成员和除了构造、析构函数 之外的全部函数成员,但是这些成员的访问属性在派生的过程 中是可以调整的。从基类继承的成员,其访问属性由继承方式 控制。 继承的三种方式: publ ic(公有)继承、 protected(保护)继承和 pri vate(私有)继承
10.1.3 类的继承方式 C++语言程序设计教程与实验 第十章 继承与派生 继承的三种方式: public(公有)继承、protected(保护)继承和private(私有)继承 在面向对象程序中,基类的成员可以有public(公有)、 protected(保护)和private(私有)三种访问类型。在基类 内部,自身成员可以对任何一个其它成员进行访问,但是通过 基类的对象,就只能访问基类的公有成员。 派生类继承了基类的全部数据成员和除了构造、析构函数 之外的全部函数成员,但是这些成员的访问属性在派生的过程 中是可以调整的。从基类继承的成员,其访问属性由继承方式 控制
C++语言程序设计教程与实验 第十章继承与派生 对于不同的继承方式,会导致基类成员原来的访问属性在派生类 中有所变化。表10.1列出了不同继承方式下基类成员访问属性的 变化情况 说明: 该表第1列给出3种继承方式,第1行给出基类成员的3种访 问属性。其余单元格内容为基类成员在派生类中的访问属性。从 表中可以看出 (1)基类的私有成员在派生类中均是不可访问的,它只能由基类 的成员访问 (2)在公有继承方式下,基类中的公有成员和保护成员在派生类 中的访问属性不变。 (3)在保护继承方式下,基类中的公有成员和保护成员在派生类 中均为保护的 (4)在私有继承方式下,基类中的公有成员和保护成员在派生类 中均为私有的
对于不同的继承方式,会导致基类成员原来的访问属性在派生类 中有所变化。表10.1列出了不同继承方式下基类成员访问属性的 变化情况。 说明: 该表第1列给出3种继承方式,第1行给出基类成员的3种访 问属性。其余单元格内容为基类成员在派生类中的访问属性。从 表中可以看出: (1) 基类的私有成员在派生类中均是不可访问的,它只能由基类 的成员访问。 (2) 在公有继承方式下,基类中的公有成员和保护成员在派生类 中的访问属性不变。 (3) 在保护继承方式下,基类中的公有成员和保护成员在派生类 中均为保护的 (4) 在私有继承方式下,基类中的公有成员和保护成员在派生类 中均为私有的 C++语言程序设计教程与实验 第十章 继承与派生
C++语言程序设计教程与实验 第十章继承与派生 从基类 vehicle(汽车)公有派生car(小汽车)类,car类 继承了 vehicle类的全部特征,同时,car类自身也有一些特点, 这就需要在继承 vehicle类的同时添加新的成员 #include<iostream. h> class vehicle 类 vehicle类的声明 private ∥有数据成员 float weight int wheels publIc ∥公有函数成员
从基类vehicle(汽车)公有派生car(小汽车)类,car类 继承了vehicle类的全部特征,同时,car类自身也有一些特点, 这就需要在继承vehicle类的同时添加新的成员。 #include<iostream.h> class vehicle //基类vehicle类的声明 { private: //私有数据成员 float weight; int wheels; public: //公有函数成员 C++语言程序设计教程与实验 第十章 继承与派生