欢迎来到天天文库
浏览记录
ID:38421971
大小:356.00 KB
页数:18页
时间:2019-06-12
《第三阶段继承性和派生类实验手册》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第一阶段C++中类的实现第四章继承性和派生类【实验目标】完成本章的内容以后,您将达到:Ø使用继承Ø使用继承中的构造函数和析构函数Ø使用多继承第一阶段C++中类的实现本章实验给出了全面的操作步骤,请学生按照给出的步骤独立完成实验,以达到要求的实验目标。第一阶段——指导学习(60分钟)1.继承使用继承,我们能够在类之间重用函数。基类成员的可访问性根据它们是私有的、公有的还是保护成员而不同。派生类在成员只能访问基类的公有和保护成员。当一个派生类生自多个基类时,就发生了多重继承。当基类有同名的成员函数时,我们需要使用作用域解析操作符来引用正确的类
2、。在下面所示的程序中,我们将使用两个基类,并从这两个基类公有派生一个类。该程序将从用户获得有关学生个人情况和成绩的信息并显示这些信息。1)声明基类classTeacher//声明类Teacher(教师){public://公有部分Teacher(stringnam,inta,stringt);//构造函数voiddisplay();//输出教师有关数据protected://保护部分stringname;intage;stringtitle;//职称};classStudent//定义类Student(学生){public:Student
3、(charnam[],chars,floatsco);//构造函数第一阶段C++中类的实现voiddisplay();//输出学生有关数据protected:charname1[20];charsex;floatscore;//成绩};1)声明派生类声明派生类需要指定每个基类的访问说明符。classGraduate:publicTeacher,publicStudent//声明多重继承的派生类Graduate{public:Graduate(stringnam,charnam1[],inta,chars,stringt,floatsco,
4、floatw):Teacher(nam,a,t),Student(nam1,s,sco),wage(w){}voidshow()//输出研究生的有关数据{cout<<"name:"<5、)定义类的成员函数:Teacher::Teacher(stringnam,inta,stringt)//构造函数{name=nam;age=a;title=t;}voidTeacher::display(){cout<<"name:"<6、tudent::display(){cout<<"name:"<#includeusingnamespacestd;classTeacher//声明类Teacher(教师){public://公有部分Teacher(stringnam,inta,stringt);//构造函数voiddisplay();//输出7、教师有关数据protected://保护部分stringname;intage;stringtitle;//职称};classStudent//定义类Student(学生){public:Student(charnam[],chars,floatsco);//构造函数voiddisplay();//输出学生有关数据protected:charname1[20];charsex;floatscore;//成绩};classGraduate:publicTeacher,public第一阶段C++中类的实现Student//声明多重继承的派生类8、Graduate{public:Graduate(stringnam,charnam1[],inta,chars,stringt,floatsco,floatw):Teacher(nam,a,
5、)定义类的成员函数:Teacher::Teacher(stringnam,inta,stringt)//构造函数{name=nam;age=a;title=t;}voidTeacher::display(){cout<<"name:"<6、tudent::display(){cout<<"name:"<#includeusingnamespacestd;classTeacher//声明类Teacher(教师){public://公有部分Teacher(stringnam,inta,stringt);//构造函数voiddisplay();//输出7、教师有关数据protected://保护部分stringname;intage;stringtitle;//职称};classStudent//定义类Student(学生){public:Student(charnam[],chars,floatsco);//构造函数voiddisplay();//输出学生有关数据protected:charname1[20];charsex;floatscore;//成绩};classGraduate:publicTeacher,public第一阶段C++中类的实现Student//声明多重继承的派生类8、Graduate{public:Graduate(stringnam,charnam1[],inta,chars,stringt,floatsco,floatw):Teacher(nam,a,
6、tudent::display(){cout<<"name:"<#includeusingnamespacestd;classTeacher//声明类Teacher(教师){public://公有部分Teacher(stringnam,inta,stringt);//构造函数voiddisplay();//输出
7、教师有关数据protected://保护部分stringname;intage;stringtitle;//职称};classStudent//定义类Student(学生){public:Student(charnam[],chars,floatsco);//构造函数voiddisplay();//输出学生有关数据protected:charname1[20];charsex;floatscore;//成绩};classGraduate:publicTeacher,public第一阶段C++中类的实现Student//声明多重继承的派生类
8、Graduate{public:Graduate(stringnam,charnam1[],inta,chars,stringt,floatsco,floatw):Teacher(nam,a,
此文档下载收益归作者所有