C++三种继承方式public、protected、private

来源:互联网 发布:淘宝清仓报名要求 编辑:程序博客网 时间:2024/04/20 00:28
在C++中,类继承书写方式如下:

派生类的声明

class 派生类名:继承方式 基类名 //其中继承方式可省略(默认的继承方式为private,例如:class A:B{};)


{


   新增成员声明;


};


其中,继承方式分为三种:public,private,protected,其区别如下:


public继承:


1、基类的public和protected成员的访问属性在派生类中保持不变,但基类的private成员不可直接访问。


2、派生类中的成员函数可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员。


3、通过派生类的对象只能访问基类的public成员。


private继承:


1、基类的public和protected成员都以private身份出现在派生类中,但基类的private成员不可直接访问。


2、派生类中的成员函数可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员。


3、通过派生类的对象不能直接访问基类中的任何成员。


protected继承:


1、基类的public和protected成员都以protected身份出现在派生类中,但基类的private成员不可直接访问。


2、派生类中的成员函数可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员。


3、通过派生类的对象不能直接访问基类中的任何成员。


派生类的特性:

(1)派生类可以拥有基类的所有成员(但基类的构造函数和赋值操作符重载函数除外)

(2)派生类可以有新成员,也可以对基类的成员变量和成员函数重定义

(3)派生类不可以直接访问基类的私有成员变量和私有成员函数

(4)基类友元不是派生类友元,基类是另一个类友元,派生类不是该类友元




0 0