C++ 类的派生和继承

1.outline

已有类派生出新的类,新的类继承了其原有类的特征

1). 添加新的数据
2).添加新的功能
3).修改类的方法
···
从一个类派生出另一个类时,原始类称为基类,继承类称为派生类。
···
##2.基本操作

class a:public b
{
    ....
}

指 出 a类的基类是b类。上述特殊的声明头表明b是个公有基类,这被称为公有派生。派生类对象包含基类对象。使用公有派生,基类的公有成员将成为派生类的公有成员;基类的私有部分也将成为派生类的一部分,但只能通过基类的公有和保护方法访问。
上述代码做了两件事:

1).派生类对象存储了基类的数据成员( 派生类继承了基类的实现);
2). 派生类对象可以使用基类的方法(派生类继承了基类的接口)。

派生类a需要做的:

1). 派生类需要自己的构造函数。
2). 派生类可以根据需要添加额外的数据成员和成员函数.

2.权限

a.派生类不能直接访问基类的私有成员,必须通过基类的方法

class::a(unsigned int x, unsigned int y):b(x,y)
{
    .....
}


中 :b(x, y) 是 成 员 初 始 化 列 表 。 它 是 可 执 行 的 代 码 , 调用b的构造函数。例如,假设程序包含如下声明:

class::aa(1, 2);

则 a构造 函数将把实参1,2 给 形 参 x,y, 然后将这些参数作 为 实 参 传 递 给 b构 造 函 数 ,后 者 将 创 建 一 个 嵌 套 b对 象 ,并将数据1和 2存储在该对象中。
如果,只是声明:

class::a(x,y)
{
    .....
}

那么只会调用b基类的默认的构造函数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值