c++基础学习10-c++的继承

本文深入探讨了 C++ 中的继承概念,包括类之间的父子关系、成员的访问级别及如何通过 public、private 和 protected 关键字来控制成员的可见性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,继承的概念

1,面向对象中的继承指类之间的父子关系。

子类拥有父类的所有成员变量和成员函数。
  子类对象可以当做父类对象使用
     子类可以拥有父类没有的方法和属性
下面看一个例子
class parent
{
    private:
        int a;
    public:
        parent()
            {
                  a = 100;
             }

         void print()
              {
                   cout<<"a = "<< a << endl;
              }

};
class child : parent
{


};
int main()
{
    parent p;
    p.print();

    child c;
    c.print();

    return 0 ;

}
以上代码会出现错误,提示print函数是私有的。

2,深入了解继承

c++中的访问级别与继承 继承时的访问级别设定会影响到成员的访问级别。class child : parent{ class child : private parent{ 等于}; };但是要注意:c++中class的继承默认为private继承。private继承的子类拥有父类的所有成员。private继承使得父类的所有成员在子类中变为private c++中的访问级别与继承public继承父类成员在子类中保持原有访问级别private继承父类成员在子类中变为private成员
例:
上面这段代码会出现错误:提示a是私有成员,无法访问。因为对于parent类,a是私有成员,对于child,属于类的外部,当然不能访问。根据以上问题c++提供了新的关键字3,类的protect成员protect成员可以在子类中被访问但不能在外界被访问。protect成员的访问权限结余private和public之间下面如果将上述程序子类中的时候就可以被子类访问了。那么类成员访问级别究竟是怎么设置的呢1,需要被外界访问的成员设置为public 2,只能在当前类中访问的成员直接设置为private3,能在当前类和子类中访问的成员设置为protected。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值