C++中的继承和派生,以及访问的限制

一、C++中的继承和派生

(1)、继承是从先辈那里得到属性和行为特征,从另一个角度来看待问题,就是从已有类产生新的类的过程就是类的派生。对派生类和基类的描述:可以说派生类是基类的具体化,而基类则是派生类的抽象。

(2)、基类综合了派生类的公共特性,派生类则是在基类的基础上增加某些特性,把抽象类变成具体、实用的类型。

(3)派生类的一般格式:

class 派生类名:[继承方式] 基类名{

派生类新增的数据成员和成员函数

};

(4)、公有继承

class UStudent:public Student{

...

};

私有继承

class UStudent:private Student{

...

};

保护继承

class UStudent:private{

...

};

二、基类成员在派生类中的访问属性

基类成员在派生类中的访问属性
基类中的成员继承方式基类成员在派生类中的访问属性
publicpublic公有
 private私有
 protected保护
privatepublic不可访问
 private不可访问
 protected不可访问
protectedpublic保护
 private私有
 protected保护

三、派生类对基类成员的访问规则

派生类对基类成员的访问规则
公有继承
基类中的成员publicprivateprotected
访问方式内部访问 可以不可以可以
对象访问可以不可以不可以
私有继承
基类中的成员publicprivateprotected
访问方式内部访问可以不可以可以
对象访问不可以不可以不可以
保护继承
基类中的成员publicprivateprotected
访问方式内部访问可以不可以可以
 对象访问不可以不可以不可以
内部访问:由派生类中新增的成员函数对基类继承来的成员的访问
对象访问:在派生类外部,通过派生类的对象对从基类继承来的成员的访问

四、公有继承的访问规则

【1】基类的公有成员和保护成员被派生类公有继承时,在派生类中依然是公有成员和保护成员。派生类的成员函数能够访问(类内能访问),但是派生类的对象只能访问继承的公有成员(类外访问)。

【2】基类的私有成员不允许派生类类继承。所以派生类无论是类内访问还是类外访问,都是无法直接访问从基类中继承过来的私有成员。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值