网站大量收购独家精品文档,联系QQ:2885784924

VisualC++教程PowerPoint课件chap-07.pdf

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 继承、重载和多态性 第7章 继承、重载和多态性 继承 继承 重载 多态性 继承 继承 •基类和派生类 •继承的访问控制 •派生类的构造函数和析构函数 •多重派生 基类和派生类 基类和派生类 • 继承就是从一个类中继承它的特性到另一个 类中。 – 被继承的类叫做基类, – 继承基类的类称为派生类。 – 派生类可以继承基类的特性并添加自己的独特特 性。 定义派生类 定义派生类 class derivedclass:public bassclass { } – 在后面的花括号中写出derivedclass中所有非继承的特 性。 – public关键字所处的位置用于写访问修饰符,允许省略不 写。 – 访问形饰符只能是public, private或者protected之一 – 默认为private。 类的继承 类的继承 类继承自两个以上的基类 类继承自两个以上的基类 继承的访问控制 继承的访问控制 • 基类各个成员的访问修饰符(private, public和 protected)以及派生类以什么方式继承基类(也是 private, public和protected)决定了基类的成员是 否允许派生类的访问。 – 如果派生类以public的方式继承基类,那么,基类的所有 公有数据成员都会成为派生类的公有数据成员,而基类的 私有数据成员仍然保持它的私有特性,也就是说只能被基 类定义的成员函数所访问,而不能被派生类的任何成员函 数所访问。同样,基类的所有私有成员函数派生类也不能 够访问。 – 如果以private的方式继承一个类,那么基类的所有数据 成员都会变成派生类的私有成员,不论这个成员在基类中 是私有的还是公有的。这时派生类的成员仍然可以访问它 们,但是程序其他部分的代码不能够访问它们。 用公有方式继承基类的私有数据成 用公有方式继承基类的私有数据成 员的方法计算一个矩形的面积 员的方法计算一个矩形的面积 用私有方式继承基类的私有数据成 用私有方式继承基类的私有数据成 员的方法计算一个矩形的面积 员的方法计算一个矩形的面积 关于protected 关于protected • 被声明为protected的成员在类的内部是公有的,但 是在类的外部则是私有的。 – 派生类中可以直接访问基类的受保护的成员,但是在类的 外部则不可以直接访问它们,因为在类的外部认为它们是 私有的成员。 • 如果派生类以public的方式继承基类,那么基类的 protected成员在派生类中仍然是protected类型 • 如果派生类以private的方式继承基类,那么基类的 protected成员在派生类中就变成private类型。 使用protected成员 使用protected成员 派生类的构造函数和析构函数 派生类的构造函数和析构函数 • 由于在派生类中允许存在基类中没有的成员 数据,因此,在C++中,使用基类的构造函数 为基类的数据成员初始化,而使用派生类的 构造函数为派生类中新定义的数据成员初始 化。 • 如果基类没有显式定义一个构造函数用于对 成员数据进行初始化的话,那么就用派生类 的构造函数对它们进行初始化。 计算一个立方体的体积 计算一个立方体的体积 调用基类的构造函数 调用基类的构造函数 派生类和基类构造函

文档评论(0)

时间加速器 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档