gpt4 book ai didi

c++ - 是否可以仅取消隐藏基类的特定重载方法

转载 作者:行者123 更新时间:2023-12-01 14:39:23 25 4
gpt4 key购买 nike

#include <iostream>

class B
{
public:
virtual void f() {std::cout<<"Fi";}
virtual void f(int) {std::cout<<"GI";}

};
class A : public B
{
public:
void f(double) {std::cout<<"HI";}
using B::f;//but I want to use only f(), not f(int)
};

int main () {
A a;
a.f();
a.f(10);

return 0;
}

在派生类 A 中是否可以仅取消隐藏 f() 重载?所以 a.f(10);会调用 A::f(double)

最佳答案

您可以将 using 语句替换为调用基类方法的函数:

void f() { B::f(); }

关于c++ - 是否可以仅取消隐藏基类的特定重载方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61944936/

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