C++程序设计教程 杨国兴及例题 第7章 继承与派生

C++程序设计教程 杨国兴及例题 第7章 继承与派生

ID:40238268

大小:786.00 KB

页数:61页

时间:2019-07-28

C++程序设计教程 杨国兴及例题 第7章 继承与派生_第1页
C++程序设计教程 杨国兴及例题 第7章 继承与派生_第2页
C++程序设计教程 杨国兴及例题 第7章 继承与派生_第3页
C++程序设计教程 杨国兴及例题 第7章 继承与派生_第4页
C++程序设计教程 杨国兴及例题 第7章 继承与派生_第5页
资源描述:

《C++程序设计教程 杨国兴及例题 第7章 继承与派生》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章继承与派生7.1类的继承与派生7.2类的继承方式7.3派生类的构造过程和析构过程7.4多继承7.1类的继承与派生7.1.1继承与派生的基本概念在原有类的基础上派生出新的类,新类继承原有类的属性和方法,称原有的类为基类,新类称为派生类。第7章继承与派生人类:                   姓名、性别、年龄、身高、体重教师类:               姓名、性别、年龄、身高、体重、专业、职称管理人员类:       姓名、性别、年龄、身高、体重、职务教师管理人员类:姓名、性别、年龄、身高、体重、专业、职称、职务学生类:               姓

2、名、性别、年龄、身高、体重、学号、班级、专业人类教师类学生类管理人员类教师管理人员类多继承:派生类有多个基类单继承:派生类只有一个基类直接基类间接基类7.1类的继承与派生7.1.2派生类的声明单继承派生类的声明语法为:class派生类名:继承方式基类名{派生类新增成员的声明;}继承方式有三种(private,protected,public),在下一节中详细介绍。第7章继承与派生例7.1定义一个位置坐标类,属性有x坐标和y坐标,成员函数包括构造函数、获取x坐标的函数、获取y坐标的函数和移动位置到新的坐标点函数。然后定义派生类点类,除了继承基类(位置类)的成员外,

3、又增加了新的数据成员颜色、获取颜色值的成员函数和显示数据成员值的函数。#include#includeclassCLocation//位置坐标类{private:intx;inty;public:CLocation(intx=0,inty=0);voidMoveTo(intx,inty);intGetx();intGety();};第7章继承与派生例7.1(续一)CLocation::CLocation(intx,inty){CLocation::x=x;//可以写成this->x=x;CLocation::y=y;/

4、/可以写成this->y=y;}voidCLocation::MoveTo(intx,inty){CLocation::x=x;//可以写成this->x=x;CLocation::y=y;//可以写成this->y=y;}intCLocation::Getx(){returnx;}intCLocation::Gety(){returny;}可通过域运算符(::)访问类中的成员x和y,与使用this指针有同样作用第7章继承与派生例7.1(续二)classCPoint:publicCLocation//从CLocation中公有继承{private:charCol

5、or[10];public:CPoint(char*c);voidSetColor(char*c);voidShow();};CPoint::CPoint(char*c){strcpy(Color,c);}voidCPoint::SetColor(char*c){strcpy(Color,c);}voidCPoint::Show(){cout<

6、tp("Red");p.Show();p.MoveTo(7,8);p.Show();p.SetColor("Green");p.Show();}位置坐标通过CLocation类构造函数的默认参数值设置为(0,0)程序运行结果为:0,0Red7,8Red7,8Green第7章继承与派生返回7.2类的继承方式类成员的访问权限:私有成员(private):可以被类自身的成员和友元访问,但不能被包括派生类在内的其他任何类和任何普通函数访问公有成员(public):可以被任何普通函数和任何类的成员函数访问保护成员(protected):可以被类自身的成员和友元访问外,还可

7、以被派生类的成员函数访问,但不能被任何非友元的普通函数访问类的三种继承方式:公有继承(public):保护继承(protected):私有继承(private):第7章继承与派生7.2类的继承方式7.2.1公有继承公有继承的特点:(1)基类的私有成员不能被派生类的函数成员访问(2)基类的公有成员和保护成员在派生类中的访问权限不变分析例7.1基类CLocation中的公有成员Getx()、Gety()和MoveTo(),在派生类CPoint中的访问权限仍然是公有的。而x,y是基类CLocation的私有成员,在派生类CPoint的成员函数中不能访问。如果将CPoi

8、nt类的成员函数Show

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

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

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