继承中参数传递及调用顺序

本文详细介绍了C++继承中构造函数的参数传递和调用顺序。在单一及复杂继承情况下,如何定义和调用基类与派生类构造函数,以及派生类构造函数如何初始化基类和新增成员。测试结果显示,未实现的构造函数会导致编译错误。总结了派生类构造函数的调用顺序:首先是基类构造函数,然后是内嵌对象构造函数,最后是派生类自身的构造函数。析构函数的调用顺序则相反。
摘要由CSDN通过智能技术生成

继承中参数传递及调用顺序

一、简单派生类的构造函数传参

C++语言的继承特性,指子类可以继承父类的属性和行为,并可以重新定义或添加新的属性和行为。父类中为private型的属性和行为虽然被继承,但是子类中仍不能访问。在继承机制下,构造函数是不能被继承的,所以基类构造函数的参数要由子类构造函数传!

单一继承的子类构造函数的声明(.h中)形式为:

派生类构造函数名(参数总表) ();

单一继承的子类构造函数的定义(.cpp中)形式为:

派生类名::派生类构造函数名(参数总表) : 基类构造函数名 (参数名表)

{

派生类新增成员的初始化语句;

};  

定义派生类的构造函数时,在构造函数的参数总表中包括基类构造函数所需的参数和派生类新增的数据成员初始化所需的参数。冒号后面基类构造函数名 (参数名表),表示要调用基类的构造函数。

#include "stdafx.h"

#include <iostream>    
#include <string>    
using namespace std;    

class parent
{
public:
	parent(int a,int b)  //基类构造函数,需要传入两个参数
	{ 
		//基类的初始化
		this->a = a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值