bupt c++慕课测试与作业8章
1设计学生类,数据成员包括学号、姓名、年龄、成绩,为保护成员;成员函数有构造函数、析构函数。定义带默认参数值的构造函数,默认值为:2021001,“Lili”,19,89.5。定义析构函数,析构时输出:学号,姓名,以及提示字符串“~~~”。
设计研究生类,从学生类公有继承,数据成员增加:研究方向(字符串类型);成员函数有构造函数、析构函数。构造函数中输出提示信息“construction”,并读取用户输入的研究方向信息给新增成员初始化;定义析构函数,析构时输出:学号,姓名,研究方向,以及提示字符串“~~~”。
编写主程序测试代码,定义一个不带参数的学生类对象。再定义一个不带参数的研究生类对象。
#include <iostream>
using namespace std;
class student{
protected:
int id;
string name;
int age;
float score;
public:
student(int myid=2021001,string myname="Lili",int myage=19,float myscore=89.5)
{
id=myid;name=myname;
age=myage;
score=myscore;
}
~student()
{
cout<<id<<','<<name<<','<<"~~~"<<endl;
}
};
class graduate_stu: public student
{
private:
string direction;
public:
graduate_stu()
{
cout<<"construction"<<endl;
cin>>direction;
}
~graduate_stu()
{
cout<<id<<','<<name<<','<<direction<<','<<"~~~"<<endl;
}
};
int main()
{
student s1;
graduate_stu s2;
}
1 设计学生类,数据成员包括学号、姓名、年龄、成绩,为保护成员;成员函数有构造函数、信息输出函数pr。定义带默认参数值的构造函数,默认值为:2021001,“Lili”,19,89.5。定义信息输出函数pr,输出:学号,姓名,年龄,成绩。
设计研究生类,从学生类公有继承,数据成员增加:研究方向(字符串类型);成员函数有构造函数、信息输出函数pr。构造函数中输出提示信息“construction”,并读取用户输入的研究方向信息给新增成员初始化;定义信息输出函数pr,输出:学号,姓名,研究方向。
编写主程序测试代码,定义一个学生指针,指向一个研究生类对象(申请堆空间),通过指针调用信息输出函数pr,看看能不能输出研究方向。(2分)
#include <iostream>
using namespace std;
class student{
protected:
int id;
string name;
int age;
float score;
public:
student(int myid=2021001,string myname="Lili",int myage=19,float myscore=89.5)
{
id=myid;name=myname;
age=myage;
score=myscore;
}
void pr()
{
cout<<id<<','<<name<<','<<age<<','<<score<<endl;
}
~student()
{
//cout<<id<<','<<name<<','<<"~~~"<<endl;
}
};
class graduate_stu: public student
{
private:
string direction;
public:
graduate_stu()
{
cout<<"construction"<<endl;
cin>>direction;
}
void pr()
{
cout<<id<<','<<name<<','<<direction<<endl;
}
~graduate_stu()
{
// cout<<id<<','<<name<<','<<direction<<','<<"~~~"<<endl;
}
};
int main()
{
student *p;
p=new graduate_stu;
p->pr();
}
更多推荐



所有评论(0)