在其子类的子类中用同名函数重写基类中的函数(多重继承)?

发布于 2024-08-23 05:13:00 字数 223 浏览 7 评论 0原文

考虑以下内容,仅程序体,语法不正确:

class super
{
  func1();//the method which is to be be overridden
}
class sub1 extends super
{
  func1();
}
class sub2 extends sub1
{
  func1();
}

class Main
{
  main()
}

Consider the following, only program body, syntax not correct:

class super
{
  func1();//the method which is to be be overridden
}
class sub1 extends super
{
  func1();
}
class sub2 extends sub1
{
  func1();
}

class Main
{
  main()
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

丢了幸福的猪 2024-08-30 05:13:00
  1. 这在继承中非常可能且常见。但是,为了使其正常工作,某些语言需要额外的关键字(newvirtual,具体取决于您的意图)
  2. 这并不构成多重继承。多重继承是指一个类派生许多基类。
  1. This is very possible and common use on inheritance. However, for this to work well, some languages require additional keywords (new or virtual, depending on your intentions)
  2. This does not constitute multiple inheritance. multiple inheritance is when one class is deriving many base classes.
翻了热茶 2024-08-30 05:13:00

多重继承是一个类继承多个类的情况。 Wiki

示例:类 D 派生自类 B1 和类 B2

class D : public B1, public B2 {
};

您的示例,正​​如 itowlson 已经指出的那样out,是两个级别的单继承,这与多重继承不同。

Multiple Inheritance is the scenario when one class inherits from multiple classes. Wiki

Example: class D derives from both class B1 and class B2

class D : public B1, public B2 {
};

Your example, as itowlson already pointed out, is two levels of single inheritance, which is not same multiple inheritance.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文