第十一章继承与派生讲述.ppt

  1. 1、本文档共105页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十一章继承与派生讲述

* * * * * * * * * * * * * * * * * * * * * * * * * * * 运行结果: Bs constructor called. Cs constructor called. 5 6 Cs destructor called. Bs destructor called. * * * * * * * * * * * * * * * * * * * * * * * (1) 派生类对象向基类对象赋值 可以用子类(即公用派生类)对象对其基类对象赋值。如 A a1; //定义基类A对象a1 B b1; //定义类A的公用派生类B的对象b1 a1=b1; //用派生类B对象b1对基类对象a1赋值 在赋值时舍弃派生类自己的成员。 * 只能用子类对象对其基类对象赋值,而不能用基类对象对其子类对象赋值。 同理,同一基类的不同派生类对象之间也不能赋值。 * (2)派生类的对象初始化基类的引用 A a1; //定义基类A对象a1 B b1; //定义公用派生类B对象b1 A r=a1; //定义基类A对象的引用变量r,并用a1对其初始化 A r=b1;//定义基类A对象的引用变量r,并用派生类B对象b1对其初始化 它只是b1中基类部分的别名,r与b1中基类部分共享同一段存储单元,r与b1具有相同的起始地址。 引用必须初始化,与一个变量联系后,不能再作为其他变量的引用 * (3)函数的参数是基类对象或基类对象的引用,相应的实参可以用子类对象 void fun(A r)//形参是类A的对象的引用变量 {coutr.numendl;} //输出该引用变量的数据成员num 用派生类B的对象b1作实参: fun(b1); 输出类B的对象b1的基类数据成员num的值。 * (4)指向基类的指针指向派生类 例5.10 定义一个基类Student(学生),再定义Student类的公用派生类Graduate(研究生),用指向基类对象的指针输出数据。 * #include iostream #include string using namespace std; class Student //声明Student类 {public: Student(int, string,float); //声明构造函数 void display( ); //声明输出函数 private: int num; string name; float score; }; Student::Student(int n, string nam,float s) {num=n; name=nam; score=s; } * void Student::display( ) //定义输出函数 {coutendl″num:″numendl; cout″name:″nameendl; cout″score:″scoreendl; } class Graduate: public Student {public: Graduate(int, string ,float,float); //声明构造函数 void display( ); //声明输出函数 private: float pay; //工资 }; * Graduate::Graduate(int n, string nam,float s,float p): Student(n,nam,s),pay(p){ } //定义构造函数 void Graduate::display() //定义输出函数 {Student::display(); cout″pay=″payendl; } int main() {Student stud1(1001,″Li″,87.5); Graduate grad1(2001,″Wang″,98.

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档