游戏网站做代理,汽车网站建设策划方案,上海市建筑网,wordpress get title#xff08;1#xff09;子对象的概念#xff1a;若派生类A1的数据成员中包含基类A的对象a#xff0c;则a为派生类A1的子对象 #xff08;2#xff09;含子对象的派生类的构造函数的执行顺序是#xff1a; ①调用基类构造函数#xff0c;对基类数据成员初始化 ②调用子…1子对象的概念若派生类A1的数据成员中包含基类A的对象a则a为派生类A1的子对象 2含子对象的派生类的构造函数的执行顺序是 ①调用基类构造函数对基类数据成员初始化 ②调用子对象构造函数对子对象数据成员初始化 ③执行派生类构造函数本身对派生类数据成员初始化 3含子对象的派生类的构造函数的一般形式 派生类构造函数名总参数表基类构造函数名参数表子对象名参数表{派生类中新增数据成员初始化语句} 【代码实例】下面正确运行
#include bits/stdc.h
#includeiostream
using namespace std;class Student{ //基类 public:Student(int n,string nam){numn;namenam;}void display(){coutnum:numendlname:nameendl;}protected:int num;string name;}; class Student1:public Student{ //派生类 public:Student1(int n,string nam,int n1,string nam1,int a,string ad):Student(n,nam),monitor(n1,nam1){ //【核】含子对象的派生类构造函数写法 agea;addrad;}void show(){coutThis student is:endl;display();coutage:ageendl;coutaddress:addrendlendl;}void show_monitor(){coutendlClass monitor is:endl;monitor.display();}private:Student monitor; //子对象 int age;string addr;
};int main(){Student1 stud1(10010,Wang_li,10001,Li_sun,19,115北京,上海路); stud1.show();stud1.show_monitor(); //输出子对象的数据 return 0;
}