11.4.3保护成员和保护继承 用保护继承方式建立的派生类称为保护派生类 (protected derived class),其基类称为受保护 的基类(protected base class),简称保护基类。 保护基类的公用成员和保护成员在派生类中 都成了保护成员; 其私有成员仍为基类私有。 017年4月26日星期 第11章继承与派生 HOME 27 12时16分24秒 BACK NEXT
HOME2017年4月26日星期 三12时16分24秒 第11章 继承与派生 27 用保护继承方式建立的派生类称为保护派生类 (protected derived class),其基类称为受保护 的基类(protected base class),简称保护基类。 保护基类的公用成员和保护成员在派生类中 都成了保护成员; 其私有成员仍为基类私有
11.4.3保护成员和保护继承 由protected)声明的成员称为“保护成员”。 保护成员可以被派生类的成员函数引用。 基类 派生类 保护数据 保护数据成员 派生类1 在类外 保护成员 成员函 不能访问 函数 保护成员函数 数可以 基类保护 访问基 成员 派生类 数据成员 类保护 新增成员 成员 成员函数 017年4月26日星期 第11章继承与派生 HOME 28 12时16分24秒 BACK NEXT
HOME2017年4月26日星期 三12时16分24秒 第11章 继承与派生 28 由protected声明的成员称为 “保护成员” 。 保护成员可以被派生类的成员函数引用
用保护继承方式建立的派生类称为保护派生类 (protected derived class),其基类称为受保护的基类 (protected base class),简称保护基类。 保护基类的公用成员和保护成员在派生类中都成了 保护成员; 其私有成员仍为基类私有。 私有继承和保护继承在直接派生类中的作用实际上 是相同的,在类外不能访问任何成员,但如果继续 派生,在新的派生类中,两种继承方式的作用就不 同了。 2017年4月26日星期 第11章: 继承与派生 0雪2时16分24秒 BACK NEX
HOME2017年4月26日星期 三12时16分24秒 第11章 继承与派生 29 用保护继承方式建立的派生类称为保护派生类 (protected derived class),其基类称为受保护的基类 (protected base class),简称保护基类。 保护基类的公用成员和保护成员在派生类中都成了 保护成员; 其私有成员仍为基类私有。 私有继承和保护继承在直接派生类中的作用实际上 是相同的,在类外不能访问任何成员,但如果继续 派生,在新的派生类中,两种继承方式的作用就不 同了
Protected inherit public and protected member of basic class will be regarded as private member in derived class. Member functions of derived class can directly access the public and protected member of basic class,but can't access the private member of basic class. The objects of derived class can't access the any member of basic class. 2017年4月26日星期 第11章继承与派生 30 0雪2时16分24秒 BACK NEXT
HOME2017年4月26日星期 三12时16分24秒 第11章 继承与派生 30 • public and protected member of basic class will be regarded as private member in derived class. • Member functions of derived class can directly access the public and protected member of basic class, but can’t access the private member of basic class. • The objects of derived class can’t access the any member of basic class
例11.3在派生类中引用保护成员 #include <iostream> #include <string using namespace std; class Student/声明基类 public: /基类公用成员 void display(); protected /基类保护成员 int num; string name; char sex; ● 2017年4月26日星期 第11章继承与派生 31 H0画2时16分25秒 BACK NEXT
HOME2017年4月26日星期 三12时16分25秒 第11章 继承与派生 31 #include <iostream> #include <string> using namespace std; class Student//声明基类 { public: //基类公用成员 void display( ); protected : //基类保护成员 int num; string name; char sex; };