提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
设计一个Student类和它的一个派生类Undergraduate,要求如下:
Student类有schoolname(学校)、name(姓名)和age(属性),一个具有3个参数的构造方法,用于给schoolname、name、age属性赋值,一个方法打印student的属性信息。
本科生类Undergraduate增加了一个degree(学位)、一个major(专业)属性,新增一个包含5个参数的构造方法前3个参数用于给继承的schoolname、name、age赋值,后2个参数给degree、major赋值,一个方法用来修改major属性,一个方法用于打印Undergraduate的5个属性信息。
在测试类中分别创建Student对象和Undergraduate对象,初始化,并输出对象信息。某位本科生转了专业,完成操作并输出对象信息。
- #include<iostream>
- #include<string.h>
- using namespace std;
- class student{
- private:
- string schoolname;
- string name;
- float age;
- public:
- student(string school,string na,float a)
- {
- schoolname=school;
- name=na;
- age=a;
- }
- void show()
- {
- cout<<schoolname<<" "<<name<<" "<<age<<" ";
- }
- };
- class undergraduate:public student{
- private: string degree,major;
- public:
- undergraduate(string school,string na,float a,string de,string ma):student(school,na,a)
- {
- degree=de;major=ma;
- }
- void modify(string major1)
- {
- major=major1;
- }
- void print()
- {
- cout<<degree<<" "<<major<<endl;
- }
- };
- int main()
- {
- cout<<"转专业前学生信息:"<<endl;
- undergraduate u1("信息学院","夏天",20,"本科学位","计算机类");
- u1.student::show() ;
- u1.print() ;
- cout<<"转专业后的学生信息:"<<endl;
- u1.show() ;
- u1.modify("英语专业");
- u1.print() ;
- return 0;
- }

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了创建Student对象和Undergraduate对象,初始化,并输出对象信息。