免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验十一 继承与派生(一)1、 实验目的掌握利用单继承和多重继承的方式定义派生类的方法;深刻理解在各种继承方式下构造函数和析构函数的执行顺序;理解和掌握公有继承、私有继承和保护继承对基类成员的访问机制;理解虚基类的概念以及引入虚基类的目的和作用。2、 实验内容(1) 将书上例5.1的程序片段补充和改写成一个完整、正确的程序,用公用继承方式。在程序中应包括输入数据的函数,在程序运行时输入num,name,sex,age,addr的值,程序应输出以上5个数据的值。#include stdafx.h#include #include using namespace std;class Studentpublic: void get_value() cinnumnamesex; void display( ) coutnum: numendl; coutname: nameendl; coutsex: sexageaddr; void display_1() coutage: ageendl; coutaddress: addrendl; private: int age; string addr; ; int main() Student1 stud1; stud1.get_value(); stud1.get_value_1(); stud1.display(); stud1.display_1(); return 0;(2) 将书上例5.2的程序片段补充和改写成一个完整、正确的程序,用私有继承方式。在程序中应包括输入数据的函数,在程序运行时输入num,name,sex,age,addr的值,程序应输出以上5个数据的值。#include #include using namespace std;class Studentpublic: void display( ) coutnum: numendl; coutname: nameendl; coutsex: sexendl; private : int num; string name; char sex; class Student1: private Student public: void display_1() display(); coutage: ageendl; /引用派生类的私有成员,正确 coutaddress: addrendl; /引用派生类的私有成员,正确 private: int age; string addr; ; int main() Student1 stud1; stud1.display_1(); return 0; (3) 将书上例5.3的程序修改、补充,写成一个完整、正确的程序,用保护继承方式。在程序中应包括输入数据的函数。#include #include using namespace std;class Student /声明基类public: /基类公用成员 void display( ); protected : /基类保护成员 int num; string name; char sex;void Student:display( ) coutnum: numendl; coutname: nameendl; coutsex: sexendl; class Student1: protected Student /用protected继承方式声明一个派生类public: void display1( ); private: int age; string addr;void Student1:display1( ) coutnum: numendl; /引用基类的保护成员,合法 coutname: nameendl; /引用基类的保护成员,合法 coutsex: sexendl; /引用基类的保护成员,合法 coutage: ageendl; /引用派生类的私有成员,合法 coutaddress: addrendl; /引用派生类的私有成员,合法int main( ) Student1 stud1; /stud1是派生类student2的对象 stud1.display1( ); /display是派生类中的公用成员函数 return 0; (4) 有以下程序结构,请分析访问属性。class A/A为基类public: void f1( ); int i; protected: void f2( ); int j;private:int k;class B: public A /B为A的公用派生类public: void f3( ); protected: int m; private:int n;class C: public B /C为B的公用派生类public:void f4( );private: int p;int main( )A a1; /a1是基类A的对象B b1; /b1是派生类B的对象 C c1; /c1是派生类C的对象return 0;问: (1) 在main函数中能否用b1.i,b1.j和b1.k引用派生类B对象b1中基类A的成员?I,j,f2可以,k不可以(2) 派生类B中的成员函数能否调用基类A中的成员函数f1和f2?T(3) 派生类B中的成员函数能否引用基类A中的数据成员i,j,k? i,j可以,k不可以(4) 能否在main函数中用c1.i,c1.j,c1.k,c1.m,c1.n,c1.p引用基类A的成员i,j,k,派生类B的成员m,n,以及派生类C的成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国再保险行业发展研究报告
- 2024年大学三年级氢能科学与工程专业《氢能制备技术》期末考试测验卷及答案
- 加气混凝土制品工岗前理论考核试卷含答案
- 漆器制漆工常识能力考核试卷含答案
- 《GBT 24131.2-2017 生橡胶 挥发分含量的测定 第 2 部分:带红外线干燥单元的自动分析仪加热失重法》专题研究报告
- 《GB-T 40904-2021家具产品及其材料中禁限用物质测定方法 偶氮染料》专题研究报告
- 公司竖窑球团焙烧工合规化技术规程
- 燃气轮机值班员复测模拟考核试卷含答案
- 溶剂蒸馏工操作知识评优考核试卷含答案
- 玻璃钢制品灌注工诚信品质评优考核试卷含答案
- DL-T5191-2004风力发电场项目建设工程验收规程
- 广东省中山市2022-2023学年七年级上学期期末地理试题【含答案】
- 老旧排水管网改造投标技术方案(技术标)
- 表 3.0.12-4 单位(子单位)工程质量竣工验收记录
- 电梯日管控、周排查、月调度内容表格
- 抑郁症科普讲座
- 售后工程师的沟通技巧
- 重庆市2023-2024学年高一上学期期末联合检测物理试卷(含答案解析)
- 天津市部分区2019-2020学年九年级上学期期末考试语文试题(文本版-含答案)
- JCT908-2013 人造石的标准
- 食材配送服务方投标方案(技术标)
评论
0/150
提交评论