gpt4 book ai didi

c++ - 为什么无法访问基类的函数重载

转载 作者:太空狗 更新时间:2023-10-29 23:20:21 25 4
gpt4 key购买 nike

考虑以下示例:

struct Base
{
void foo()
{
cout << "Base foo\n";
}

void bar()
{
cout << "Base bar\n";
}
};

struct Derivate : public Base
{
void foo(int x)
{
cout << "Derivate foo\n";
}
};

如果我们创建两个实例,比如

Base a;
Derivate b;

Base 对象a 可以像往常一样调用它的成员函数(a.foo(); a.bar();)。

当使用 b 时,调用 b.bar() 会按预期工作,但由于我重载了 Base::foo(),这是不可能的调用 b.foo()

这是为什么?

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