蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > DOCX文档下载
 

面向对象程序设计实验三报告

  • 资源ID:53152741       资源大小:96.99KB        全文页数:10页
  • 资源格式: DOCX        下载权限:游客/注册会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

面向对象程序设计实验三报告

实验三继承、多态和虚函数 班级13电科2学号Xb 13640220姓名饶君燕 一、实验目的 1 了解面向对象程序设计中继承性、多态性的概念; 2 掌握单继承、多重继承中基类成员访问属性的变化规律及访问方法; 3 掌握类族中构造函数和析构函数的定义方法及调用顺序; 4 掌握虚函数的定义和使用方法; 二、实验任务 1. 分别采用公有继承、私有继承、保护继承完成类的设计。 基类如下 class Student public 1;} void get_value cinnumnamesex;} void display coutnnum numendl; coutname nnameendl; coutsex snd private int num; string name; char sex; }; 通过继承Student类,完成派生类Student 1的设计提示应增加成员函数void get_value_l及 void display_l;数据成员 int age 及 char addr[30],并写出 派星类的实现和演示程序。W程序中应包括接受输入数据的函数。当程序运行时, 输入num, name, sex, age, addr的值,程序应能输出以上5个数据的值。 2. 对有继承关系的程序结构进行分析。 class A//A为基类 public void fl; int i; protected void f2; intj; private int k; }; class B public A public void f3; protected int m; private int n; }; 〃B为A的公用派生类 class C public B public void f4; private int p; }; //C为B的公用派生类 int main {Aal; //al是基类A的对象 Bbl; //bl是派生类B的对象 Cel; return 0; //cl是派生类C的对象 问题 1 在main函数中能否用通过派生类B的对象bl来引用从基类A继承来的 成员i, j, k 2 派生类B中的成员函数能否调用基类A中的成员函数fl、f2 3 派生类B中的成员函数能否引用基类A中的i, j, k 4 能否在main函数中通过C类对象cl引用基类A的成员i, j, k和类B的 成员m, n 5 能否在main函数中用C类对象cl以cl.fl,cl.f2,cl.f3,cl.f4的形式调 用 fl,f2,G,f4 C6派生类C的成员函数f4能否调用基类A的成员函数fl,f2及B类中的f3 3. 继承关系下,构造函数的调用顺序。 include iostream using namespace std; class A public A{aO;bO;} Ainti{ai;bO;} Aint i,int j{ai;bj;} void display。{cout”a”a” bb;} private int a; int b; }; class B public A public Bc0;} Bint iAi c0;} Bint i,int jAi,j{cO;} Bint i,int j,int kAi,j{ck;} void display 1 display ; cout ccendl; } private int c; }; int main { Bbl; Bb2l; Bb3l,3; Bb4l,3,5; bl.displayl; b2.displayl; b3.displayl; b4.displayl; return 0; } 问题 1 阅读上述程序,写出运行时的输出结果;上机运行验证结果的正确性。 2 对程序结果进行分析,重点要指出构造函数的调用过程 C3为上述A、B类添加析构函数,并分析析构函数在继承关系下的调用顺序。 参照教材例6.1,定义Point (点)类,由Point类派生出Circle (圆)类, 再由Circle类派生出Cylinder (圆柱体)类。写一个虚函数用于输出类族中各 类的名字。分析如果该函数不是虚函数,输出又将是怎样为什么 三、实验结果 1、程序 includeiostream includestring using namespace std; class Student public void get_value { cout”请输入学号,姓名,性别, 年龄,地址endl; cinnumnamesex;} void display coutnum numendl; coutname nnameendl; coutsex sndl; private int num; string name; char sex; ; class Studentkprivate Student public void get_value_l get_value; cinageaddr; void display_l display; coutage ageendl; coutaddr addrendl; private int age; char addr[30]; }; int main { Student 1 studl; stud 1 .get_value_ 1; studl.display_l; return 0; } 2、问题解答 1 在main函数中能否用通过派生类B的对象bl来引用从基类A继承来的 成员i, j, k 答派生类B是公有继承,能访问基类A公有数据成员i,基类A保护数 据成员j,无法访问基类A的私有数据成员ko 2 派生类B中的成员函数能否调用基类A中的成员函数fl、f2 答能,派生类B是公有继承,能访问基类A公有成员函数fL基类A保 护成员函数f2。 3 派生类B中的成员函数能否引用基类A中的i, j, k 答派生类B是公有继承,能引用基类A公有数据成员i,基类A保护数 据,成员j,无法引用基类A的私有数据成员k。 4 能否在ma

注意事项

本文(面向对象程序设计实验三报告)为本站会员(aaakkpc)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开