继承与多态

11.1 继承的概念
继承是面向对象程序设计的重要特征,也是面向对象是程序设计的基石。
11.2 单继承
11.2.1 基本语法
1.吸收基类成员:派生类接收了基类当中除了构造函数、折构函数和赋值运算符重载函数之外的所有成员。
2.改造基类成员:一个可以通过继承方式改变对基类成员的控制,二者如果派生类中声明了和基类相同的成员,则会隐藏基类中的成员。
3.添加新成员:保证派生类在功能上有所发展和改进。
单继承的语法如下:
class派生类名:继承方式 基类名
{

//新增数据成员
//新增函数成员
};
11.2.2 访问权限与继承方式
每个类都要通过public 、protected和private来控制外部对其成员的访问,从而保证了对封装的需要,实现了信息的隐藏,电话拉用户的使用。
11.2.3 派生类的构造函数和折构函数
1.构造函数
激烈的构造函数并没有继承下来,要完成这些工作,就必须给派生类添加新的构造函数.派生类构造函数的一般语法形式为:
派生类名 ::派生类名(参数表):基类名(基类初始化参数表)
{
//派生类构造函数的其他初始化操作;
}
2.拷贝构造函数
和构造函数一样,派生类也没有将拷贝构造函数从基类继承下来。
3.折构函数
在派生过程中,基类的折构函数也不能继承,如果需要折构时,就要在派生类中定义新的折构函数。
4.隐藏
在类的派生层次中,基类和派生类都有自己的作用域,基基类的作用域包含了派生类的作用域,因为派生类是基类的一种。
11.3 多继承
11.3.1多继承的概念运用
多继承的继承语法如下:
class派生类名:继承方式1 基类1,继承方式2基类2,…,继承方式n 基类n
{
成员声明;
};
1.调用基类构造函数,他们被他们被继承时的声明顺序。
2.对派生类新增的成员对象初始化,在它们在类中声明的先后顺序。
3.执行派生类自身的构造函数。
11.3.2 虚基类
class A
{
public:
int val;
int a;
void f();
};
class B
{
public
int val;
int b;
void f();
};
class C:public A,publicB
{
};
11.4 多态
11.4.1多态的概念
多肽是的态是面向对象设计的态是面向对象设计的重要特征之一,它与抽象、封装、继承共同构成了面向对象设计的四大特征。
11.4.2 虚函数
实现运行时多态需要在基类中将函数声明为虚基类,也就是在函数函数声明中前加关键字virtual。
虚基类声明的语法如下:
virtual函数类型 函数名(形参表);
11.4.3 纯虚函数和抽象类
纯虚函数积累中没有定义具体操作的虚寒基类中没有定义具体操作的虚函数,要求必须在派生类中根据给出个自定义。
纯虚函数的声明语法:
virtual 函数类型 函数名(参数表)=0;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值