gpt4 book ai didi

c++ - 是否有可能从基类函数 "inherit"派生函数?

转载 作者:行者123 更新时间:2023-11-28 08:14:32 25 4
gpt4 key购买 nike

首先,让我为标题道歉,老实说,我想不出更好的措辞。下面的例子应该让我的问题更清楚一点:

class Foo    {
public:
Foo(int x);
};

class Bar : public Foo
{
public:
Bar(int y) : Foo(y);
};

演示强制Bar构造函数调用带参数Y的Foo构造函数的代码。我的问题是,是否有类似的方法来继承派生类函数来调用基类函数?

例如,所有对 Bar.Func(); 的调用也会自动调用 Foo.Func();?

最佳答案

class Foo    {
public:
Foo(int x);
void DoIt();
};

class Bar : public Foo
{
public:
Bar(int y) : Foo(y);
void DoIt();
};

void Bar::DoIt()
{
Foo::DoIt();
}

如果要从 Foo 派生并以多态方式使用,您应该将 DoIt 声明为 virtual。此外,您还需要一个 virtual 基类析构函数。

关于c++ - 是否有可能从基类函数 "inherit"派生函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8081142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com