1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > C++入门经典-例8.3-子类显示调用父类构造函数

C++入门经典-例8.3-子类显示调用父类构造函数

时间:2023-09-21 20:43:06

相关推荐

C++入门经典-例8.3-子类显示调用父类构造函数

1:当父类含有带参数的构造函数时,创建子类的时候会调用它吗?答案是通过显示方式才可以调用。

无论创建子类对象时调用的是那种子类构造函数,都会自动调用父类默认构造函数。若想使用父类带参数的构造函数,则需要显式的方式。

2:代码如下:

// 8.3.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;class CEmployee//定义CEmployee类{public:int m_ID;//定义数据成员char m_Name[128]; //定义数据成员char m_Depart[128]; //定义数据成员CEmployee(char name[])//带参数的构造函数 {strcpy(m_Name,name);cout << m_Name<<"调用了CEmployee类带参数的构造函数"<< endl; //输出信息 }CEmployee()//无参构造函数 {strcpy(m_Name,"MR");cout << m_Name<<"CEmployee类无参构造函数被调用"<< endl; //输出信息 }~CEmployee()//析构函数 {cout << "CEmployee类析构函数被调用"<< endl; //输出信息 }};class COperator :public CEmployee //从CEmployee类派生一个子类{public:char m_Password[128];//定义数据成员COperator(char name[ ]):CEmployee(name) //显示调用父类带参数的构造函数。注意格式,自己的构造函数:父类的构造函数{ //设置数据成员cout << "COperator类构造函数被调用"<< endl; //输出信息 }COperator():CEmployee("JACK")//显示调用父类带参数的构造函数{ //设置数据成员cout << "COperator类构造函数被调用"<< endl; //输出信息 }~COperator()//析构函数 {cout << "COperator类析构函数被调用"<< endl; //输出信息 }};int main(int argc, char* argv[]) //主函数{COperator optr1; //定义一个COperator对象,调用自身无参构造函数COperator optr2("LaoZhang");//定义一个COperator对象,调用自身带参数构造函数return 0;}

View Code

运行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。