- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 继承性和派生类
【实验目】本章实验给出了全面的操作步骤,请学生按照给出的步骤独立完成实验,以达到要求的实验目标。
第一阶段——指导学习(60分钟)
继承
使用继承,我们能够在类之间重用函数。基类成员的可访问性根据它们是私有的、公有的还是保护成员而不同。派生类在成员只能访问基类的公有和保护成员。
当一个派生类生自多个基类时,就发生了多重继承。当基类有同名的成员函数时,我们需要使用作用域解析操作符来引用正确的类。
在下面所示的程序中,我们将使用两个基类,并从这两个基类公有派生一个类。该程序将从用户获得有关学生个人情况和成绩的信息并显示这些信息。
声明基类
class Teacher//声明类Teacher(教师)
{
public://公有部分
Teacher(string nam , int a, string t);//构造函数
void display();//输出教师有关数据
protected://保护部分
string name;
int age;
string title;//职称
};
class Student//定义类Student(学生)
{
public:
Student(char nam[],char s,float sco);//构造函数
void display();//输出学生有关数据
protected:
char name1[20];
char sex;
float score;//成绩
}; 声明派生类
声明派生类需要指定每个基类的访问说明符。
class Graduate:public Teacher,public Student//声明多重继承的派生类Graduate
{
public:
Graduate(string nam, char nam1[],int a, char s, string t, float sco, float w):
Teacher(nam, a, t),Student(nam1, s, sco),wage(w) {}
void show()//输出研究生的有关数据
{
cout name: name endl;
cout age: age endl;
cout sex: sex endl;
cout score: score endl;
cout title: title endl;
cout wages: wage endl;
}
private:
float wage;//工资
}; 定义类的成员函数:
Teacher::Teacher(string nam , int a, string t)//构造函数
{
name = nam;
age = a;
title = t;
}
void Teacher::display()
{
cout name: name endl;
cout age: age endl;
cout title: title endl;
}
Student::Student(char nam[],char s,float sco)//构造函数
{
strcpy(name1,nam);
sex = s;
score = sco;
}
void Student::display()
{
cout name: name1 endl;
cout sex: sex endl;
cout score: score endl;
} 下面我们来看完整的程序。
#include iostream
#include string
using namespace std;
class Teacher//声明类Teacher(教师)
{
public://公有部分
Teacher(string nam , int a, string t);//构造函数
void display();//输出教师有关数据
protected://保护部分
string name;
int age;
string title;//职称
};
class Student//定义类Student(学生)
{
public:
Student(char nam[],char s,float sco);//构造函数
void display();//输出学生有关数据
protected:
char name1[20];
char sex;
float score;//成绩
};
class Graduate:public Teacher,pub
您可能关注的文档
最近下载
- HERO9Black狗9中文说明书.pdf VIP
- 中医养生馆策划方案.pptx
- 山东省济南育英教育集团2024-2025学年下学期七年级期中数学试题[含答案].pdf VIP
- ISO 898-2-2022-中文紧固件—碳钢和合金钢制紧固件的机械.pdf
- 高速铁路概论:高速铁路通信系统PPT教学课件.pptx VIP
- 自动化立体仓库堆垛机控制系统的设计稿毕业设计稿.doc VIP
- 浅谈高速铁路通信系统与其它专业接口管理工作.pdf VIP
- 放射科图像质量控制标准(5篇).docx VIP
- 银行重要信息系统投产及变更管理办法模版.docx VIP
- NB∕T 32043-2018 光伏发电工程可行性研究报告编制规程.pdf VIP
文档评论(0)