程序设计内容教程(用C、C++语言编程)第13课时 继承与多态.pptx

程序设计内容教程(用C、C++语言编程)第13课时 继承与多态.pptx

ID:52856904

大小:460.60 KB

页数:40页

时间:2020-03-27

程序设计内容教程(用C、C++语言编程)第13课时  继承与多态.pptx_第1页
程序设计内容教程(用C、C++语言编程)第13课时  继承与多态.pptx_第2页
程序设计内容教程(用C、C++语言编程)第13课时  继承与多态.pptx_第3页
程序设计内容教程(用C、C++语言编程)第13课时  继承与多态.pptx_第4页
程序设计内容教程(用C、C++语言编程)第13课时  继承与多态.pptx_第5页
资源描述:

《程序设计内容教程(用C、C++语言编程)第13课时 继承与多态.pptx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、继承与多态chapter13华中科技大学信息学院平台课——C语言程序设计目录content继承的实现方式1子类的构造函数顺序2多继承3多态的实现方式4虚函数表5重载、隐藏和覆盖的区别613.1继承的实现方式继承机制允许类自动从一个或更多的类中继承其特性、行为和数据结构,允许根据需要进行更具体的定义来建立新类,即派生类。派生类对于基类的继承提供了代码的重用性,而派生类的增加部分提供了对原有代码扩充和改进的能力。class<派生类名>:<继承方式><基类名>{<派生新类定义成员>};单继承定义的格式为class是关键字,<派生类名>是新定义的一个类的名字,它是从<基类名>中派生

2、的,并且是按指定的<继承方式>派生的。冒号“:”将派生类与基类的名字分开,用于建立派生类和基类之间的层次关系。13.1.1公有继承class<派生类名>:public<基类名>{<派生新类定义成员>};继承方式为public基类的公有成员和保护成员的访问属性在派生类中不变,而基类的私有成员不可直接访问。基类publicprotectedprivate子类publicprotected不可见13.1.1公有继承class Student  //声明基类{private:int num;string name;char sex;public:void get_value(){c

3、in >> num >> name >> sex;}void display(){cout << "num: " << num << endl;cout << "name: " << name << endl;cout << "sex: " << sex << endl;}};class Student1: public Student  //派生类{private:int age;string addr;public:void get_value_1(){cin >> age >> addr;}void display_1(){//cout<<"num: "<

4、endl;    //错误//cout<<"name: "<:private<基类名>{<派生新类定义成员>};继承方式为private基类中的公有成员和保护成员都以私有成员的身份出现在派生类中,而基类的私有成员在派生类中不可直接访问。基类publicprotecte

5、dprivate子类privateprivate不可见class Student1: private Student{private:int age;string addr;public:void display_1(){display();cout << "age: " << age << endl; //正确cout << "address: " << addr << endl; //正确}};int main(){Student1 stud1;stud1.display_1();return 0;}13.1.2私有继承示例13-2私有继承13.1.3保护继承class

6、<派生类名>:protected<基类名>{<派生新类定义成员>};继承方式为protected基类的公有成员和保护成员都以保护成员的身份出现在派生类中,而基类的私有成员变量不可直接访问。基类publicprotectedprivate子类protectedprotected不可见class Student  //声明基类{protected:      //基类保护成员int num;string name;char sex;public:      //基类公用成员void display();};class Student1: protected Student{pr

7、ivate:int age;string addr;public:void display1();};void Student1::display1(){cout << "num: " << num << endl; //引用基类的保护成员cout << "name: " << name << endl;cout << "sex: " << sex << endl;cout << "age: " << age << endl;cout << "address: " << addr << endl;}13.1.3保护

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。