清华c++程序设计课程课件(3)

清华c++程序设计课程课件(3)

ID:34617172

大小:42.10 KB

页数:6页

时间:2019-03-08

清华c++程序设计课程课件(3)_第1页
清华c++程序设计课程课件(3)_第2页
清华c++程序设计课程课件(3)_第3页
清华c++程序设计课程课件(3)_第4页
清华c++程序设计课程课件(3)_第5页
资源描述:

《清华c++程序设计课程课件(3)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、4.类的继承和派生°继承和派生(DerivationandInheritance)是C++C++程序设计(3)的重要机制,是面向目标设计的重要特征°该机制自动为一个类提供来自另一个类的操孙甲松作和数据结构清华大学电子工程系°这样可以利用已构造好的类生成新类,充分利用已有资源sun@thsp.ee.tsinghua.edu.cn°保持已有类的特性而构造新类的过程称为继2008.7.承°在已有类的基础上新增自己的特性而产生新类的过程称为派生12摘要一个生物的继承和派生图4.1概述猫科动物4.2访问控制食肉动物4.3保护的成员4.

2、4友元与继承动物类熊科动物4.5访问权限调整4.6成员名限定生物类食草动物4.7动态束定与虚函数4.8纯虚函数植物类4.9多继承344.1概述类继承的语法形式:例如:点类与矩形类class标识符2:访问控制标识符1classShape{{新成员和成员函数}public:voidSetB(intx,inty);其中:voidMoveB();标识符1-----基类voidDisplayB()const;标识符2-----派生类private:intX,Y;访问控制-----类的继承方式,有三种:};public:公有继承clas

3、sRectangle:publicShape{protected:保护继承public:voidSetD(intx,inty,intw,inth);private:私有继承voidDisplayD()const;新成员和成员函数:指在继承基类的成员和成员函数后,新增加的成员和成员函数private:intWidth,Height;5};61ò说明:4.2访问控制(继承性质)òShape是点类,有:当访问控制为public(公有继承),则派生类两个私有成员:X,Y,表示一个点的坐标全部继承基类,包括访问权限(X,Y);当访问控

4、制为private(私有继承),则禁止派三个成员函数:SetB(),MoveB(),DisplayB()生类对基类的直接访问,即使是派生类的成òRectangle是矩形类,是Shape类的派生类,有:员函数也不能直接访问基类的私有成员四个私有成员:X,Y,Width,Height;派生类的成员函数只能访问基类中具有公有访五个成员函数:SetB(),MoveB(),DisplayB(),问特性的成员或成员函数SetD(),DisplayD()通过不同性质的继承,派生类改变了对基类的òRectangle类全部继承了Shape类的

5、成员和成员访问权限函数,并加入了新的成员和成员函数78访问权限的继承和调整继承性质基类中成员访问派生类中成员的访例如:权限问权限voidShape::SetB(intx,inty)publicpublic{X=x;Y=y;}voidRectangle::SetD(intx,inty,intw,inth)publicprotectedprotected{SetB(x,y);//不可以X=x,Y=y;privateprivateWidth=w;publicprotectedHeight=h;protectedprotectedp

6、rotected}privateprivate虽然Rectangle类继承了Shape类的所有成员和成员函publicprivate数,Shape类的私有成员X,Y也是Rectangle类的私有成员,但Rectangle类的成员函数SetD()仍不能直privateprotectedprivate接访问X,Y,而要通过Shape类的公有成员函数privateprivateSetB()间接访问。910#includevoidShape::DisplayB()constclassShape{{cout<<

7、X<<''<

8、nty,intw,inth);cout<<''<

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

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

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