ImageVerifierCode 换一换
格式:PPT , 页数:30 ,大小:259KB ,
资源ID:8119672      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-8119672.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Transparancy 8(C++)北大青鸟.ppt)为本站会员(fmgc7290)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Transparancy 8(C++)北大青鸟.ppt

1、继承,第八章,2,回顾,友元函数 友元类 操作符重载,3,目标,继承 访问控制 继承中的构造函数和析构函数 函数覆盖,4,继承,继承是允许重用现有类来构造新类的特性,基类,方法和属性,5,优点,代码的可重用性类库 重定义基类的成员函数 向派生类添加新成员 不需要了解核心技术的细节,6,单一继承 2-1,将类之间的相似性质联系起来 单一继承是从现有基类创建新类的过程,7,单一继承 2-2,处理某企业中雇员的程序,使用一个箭头从派生类指向基类 表示派生类引用基类的函数和数据,而基类没有访问派生类的权限,8,基类和派生类,派生类的声明必须指定基类的名称 class Manager : public

2、Employee 任何类都能用作基类 基类分为两种类型 直接基类 间接基类,9,直接基类和间接基类,直接基类class A ;class B : public A /A是B的直接基类 ; 间接基类class A ;class B : public A ;class C : public B /A是B的间接基类 ;,10,继承的类型,11,单一继承,class A ; class B :public A ;,12,多级继承,class A ; class B : public A ; class C : public B ;,13,层次继承,class A ; class B :public A

3、 ; class C :public A ; class D :public C ; class E :public C ;,14,多重继承,class A ; class B ; class C :public A, public B ;,15,访问控制 3-1,派生类的函数 能够访问基类的保护和公有成员派生类的对象 公有派生的类的对象能够访问基类的公有成员 私有和保护派生的类的对象不能访问基类的任何成员,16,访问控制 3-2,17,访问控制 3-3,派生类不能访问基类的私有成员 公有继承不改变基类成员的访问级别 基类的另外两种访问级别使得所有继承的成员与基类成员(私有基类的私有成员或保护

4、基类的保护成员)属于相同的访问级别,18,可访问性,基类的成员函数或数据何时能够被派生类的对象使用 无论类成员是私有、公有还是保护,它们总是能够由自身的成员函数访问 在类的外部定义的对象只能访问类的公有成员,19,访问基类成员,在继承中, 如果基类的成员是公有,那么派生类成员能够访问基类的成员 派生类成员不能访问基类的私有成员,20,protected访问控制说明符,保护部分类似于私有部分 只能被其所属类的成员访问 不能被类外部的对象或函数访问 区别只有在派生类中才会表现出来,21,基类成员的访问规则,22,访问控制说明符的规则,类成员总是能够被它们自己的类的方法访问 继承类能访问基类的公有或

5、保护成员 公有成员可以在任何地方被访问,23,继承中的构造函数 3-1,先调用基类的构造函数,然后调用派生类的构造函数class Base protected: int a; public:Base()a = 0; /默认构造函数Base(int c) a = c; /单参数构造函数 ; class Derived : public Base public:Derived(): Base() /默认构造函数Derived(int c): Base(c) /单参数构造函数 ;,24,继承中的构造函数 3-2,当声明派生类的对象时,Derived obj; 它将会首先调用基类的构造函数,然后调用派

6、生类的构造函数基类构造函数是在派生类构造函数之后指定的,使用冒号分隔Derived(): Base(),25,继承中的构造函数 3-3,在派生类的构造函数调用中显式选择基类的构造函数Derived obj1(20); 调用基类中的相应构造函数Derived(int c): Base(c);,26,继承中的析构函数,调用顺序与构造函数的调用顺序相反首先调用派生类的析构函数,然后调用基类的析构函数 只有派生类的构造函数通过动态内存管理分配了内存空间时才需要定义析构函数 如果派生类的构造函数没有动态内存分配,那么派生类的析构函数可以是一个空函数,27,调用成员函数 2-1,派生类的成员函数可以和基类

7、中的成员函数同名 用基类的对象调用函数时,将调用基类的函数 使用派生类的对象时,将调用派生类的函数派生类的成员函数要调用基类的同名函数,必须使用作用域解析操作符,28,调用成员函数 2-2,class Base protected:int ss; public:Base();Base(int a)ss = a;int func()return ss; ;,class Derived : public Base public:Derived();Derived(int b) ss = b;int func() return Base:func(); ; void main() Base b1(10); /基类的对象b1.func(); /调用基类的func()Derived a1; /派生类的对象a1.func(); /调用派生类的func() ,29,函数覆盖,派生类的函数覆盖基类的同名函数 通过派生类的对象调用时,执行派生类的函数 用基类的对象调用时,执行基类的函数,30,总结,继承 访问控制 继承中的构造函数和析构函数 函数覆盖,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报