love_lla 2023-02-02 22:11 采纳率: 50%
浏览 38
已结题

c++关于继承与派生的这个代码如何理解

class A

{

public:

A(int i) { cout << i; }

~A() { }

};

class B : virtual public A

{

public:

B(int i, int j = 0) : A(j)

{

    cout << i;

}

~B() { }

};

class C : virtual public A

{

public:

C(int i, int j = 0) : A(j)

{

    cout << i;

}

~C() { }

};

class D : public C, public B

{

C obj2;

B obj1;

public:

D(int a, int b, int c, int d) : obj1(a), obj2(b), B(c), C(d), A(a)

{

    cout << b;

}

};

void main()

{

D d(1, 2, 3, 4);

}

  • 写回答

2条回答 默认 最新

  • 快撑死的鱼 2023-02-03 02:13
    关注

    回答不易,求求您采纳点赞哦

    C++中,继承是一种将基类(父类)的属性和方法复制到派生类(子类)的过程。通过继承,派生类可以在保留基类的属性和方法的同时,添加自己的属性和方法。

    在继承中,基类通常称为父类,派生类称为子类。子类继承父类的成员,并可以在此基础上添加自己的成员。这样,子类就可以共享父类的代码,从而提高代码的重用性。

    继承语法:

    class 派生类名 : 访问控制符 基类名
    {
    // 派生类的成员
    };
    
    

    访问控制符可以是 public、protected 或 private,它们决定了派生类继承基类成员的可见性。例如,如果访问控制符为 public,则继承的成员是可见的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月28日
  • 已采纳回答 4月20日
  • 创建了问题 2月2日

悬赏问题

  • ¥15 poi合并多个word成一个新word,原word中横版没了.
  • ¥15 【火车头采集器】搜狐娱乐这种列表页网址,怎么采集?
  • ¥15 求MCSCANX 帮助
  • ¥15 机器学习训练相关模型
  • ¥15 Todesk 远程写代码 anaconda jupyter python3
  • ¥15 我的R语言提示去除连锁不平衡时clump_data报错,图片以下所示,卡了好几天了,苦恼不知道如何解决,有人帮我看看怎么解决吗?
  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?