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

C++上机实验5and7C++上机实验5and7.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++面向对象程序设计实验五:派生类与继承 实验目的: 学习类的继承,能够定义和使用类的继承关系。 学习单继承派生类的声明与定义方法。 熟悉派生类在私有继承、公有继承、保护继承这三种方式下对基类成员的访问规则。 知道单继承派生类构造函数和析构函数的执行次序,熟悉单继承派生类构造函数和析构函数的构造方法。 学习多重继承派生类的定义方法。 知道多重继承派生类构造函数和析构函数的执行次序,熟悉多重继承派生类构造函数和析构函数的定义方法,理解虚基类和非虚基类的差别。 实验内容: 1、定义一个Rectangle类,它包含两个数据成员length和width;以及包含用于求长方形面积的area成员函数。再定义Rectangle的派生类Cuboid,它包含一个新的数据成员height和用于求长方体体积的成员函数Vol。在main函数中,使用这两个类,求某个长方形的面积和某个长方体的体积。 #include stdafx.h #include iostream using namespace std; class Rectangle {double length,width; public: Rectangle(double length1,double width1) {length=length1; width=width1;} double area() {return length*width;} }; class Cuboid:public Rectangle {double height; public : Cuboid(double length1,double width1,double height1):Rectangle(length1,width1) {height=height1;} double Vol() {return area()*height;}// }; int main() {Rectangle rec(12,15); Cuboid cuboid(25,16,20); coutthe rectangles area is ; coutrec.area(); coutendl; coutthe cuboids volume is ; coutcuboid.Vol()endl; return 0; } 2、程序填空:定义一个Person类,它包含三个数据成员name、age、sex;以及用于显示数据成员值的show成员函数。再定义Person的派生类Teacher,它包含两个新的数据成员department(部门)、salary(月薪),和用于显示数据成员值的show成员函数。再定义Person的派生类Student,它包含两个新的数据成员code(学号)、score(分数),和用于显示数据成员值的show成员函数。再定义Teacher类和Student类的多重继承派生类TStudent(例如:由正在攻读博士学位的在职教师构成的类)。 在main函数中,使用这四个类,分别输出此四个类的某个对象的全部数据成员的值。给出部分实现代码如下: // shiyan5.cpp : 定义控制台应用程序的入口点。 // #include stdafx.h #include iostream #include string using namespace std; class Person { protected: //若将数据成员设为私有的,在本题中可能比较麻烦 string name; //姓名 int age; //年龄 char sex; //性别 public: Person(string name1,int age1,char sex1):name(name1),age(age1),sex(sex1) //构造函数定义 { cout Person constructing...endl; } ~Person() {cout Person destructing...endl;} //析构函数定义 void show() { cout name:nameendl; cout age:ageendl; cout sex:sexendl; } }; class Teacher:public virtual Person {protected: string department; double salary; public: Teacher(string name1,int age1,char sex1,string department1,double salary1):Person(name1,age1,sex1) {dep

文档评论(0)

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

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

1亿VIP精品文档

相关文档