您的位置:首页 > 编程语言 > C语言/C++

共有继承,保护继承,私有继承的区别c++代码实例

2018-01-31 11:02 471 查看
三种继承与父类关键字的关系如表格所示

例:子类保护继承父类,则父类的public属性变为protected,父类的protected属性不变,也为protedted。

不能访问的意思是无法得到基类中private中的信息



举例:

c++代码

//父类
class parent
{
public:
parent();
~parent();
void f1(){cout<<"from public";}
protected:
void f2(){cout<<"from protected";}
private:
void f3(){cout<<"from private";}
};
//son1共有继承
class son1:public parent
{
......
};
//分析:
//son1类等同于
class son1
{
......
public:
void f1(){cout<<"from public";}//f1()属性不变
protected:
void f2(){cout<<"from protected";}//f2()属性不变
//注意这里无基类的private中的f3()
};
//son2保护继承
class son1:protected parent
{
......
};
//分析:
//son2类等同于
class son2
{
......
protected:
void f1(){cout<<"from public";}//这里f1()属性已经变为protected
protected:
void f2(){cout<<"from protected";}//f2()属性不变
//注意这里无基类的private中的f3()
};
//son3私有继承
class son1:private parent
{
......
};
//分析:
//son3类等同于
class son2
{
......
private:
void f1(){cout<<"from public";}//这里f1()属性已经变为private
private:
void f2(){cout<<"from protected";}//f2()属性已经变为private
//注意这里无基类的private中的f3()
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: