C语言之含有子对象的派生类的构造函数

时间:2021-05-03 01:30:18
#include <iostream>


using namespace std;


class Student
{
public:
Student(int n,string nam)
{
num=n;
name=nam;
}
void display1()
{
cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl; 
}
protected:
int num;
string name;
};


class Student1:public Student
{
public:
Student1(int n,string nam,int n1,string nam1,string s,double sco):Student(n,nam),monitor(n1,nam1)
{
sex=s;
score=sco;
}
void display2()
{
cout<<"The Student is:"<<endl;
display1();
cout<<"sex:"<<sex<<endl;
cout<<"score:"<<score<<endl;
}
void display3()
{
cout<<"The monitor is:"<<endl;
monitor.display1();
}
private:
Student monitor;
string sex;
double score;
};


int main()
{
Student1 stud1(101,"WANG",102,"WU","F",99.9);
stud1.display2();
stud1.display3();

return 0;
}