共有继承,保护继承,私有继承的区别c++代码实例
2018-01-31 11:02
225 查看
三种继承与父类关键字的关系如表格所示
例:子类保护继承父类,则父类的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()
};
例:子类保护继承父类,则父类的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()
};
相关文章推荐
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 共有继承,保护继承,私有继承的区别c++代码实例
- 【C++】解析共有继承、私有继承、保护继承区别联系
- C++继承详解:共有(public)继承,私有(private)继承,保护(protected)继承
- C++继承详解:共有(public)继承,私有(private)继承,保护(protected)继承
- C++中公有继承、保护继承、私有继承的区别
- C++继承详解:共有(public)继承,私有(private)继承,保护(protected)继承
- C++中公有继承、保护继承、私有继承的区别
- 从零开始学C++之继承(一):公有/私有/保护继承、overload/overwrite/override之间的区别
- C++ 公有继承、保护继承、私有继承的区别
- [收集]C++继承:共有,私有,保护
- c++ 公有继承、保护继承和私有继承的区别