我是C++的新手,并且具有包含多个类的代码。我想从派生类访问父类的成员函数。因此,我定义了公共(public)继承并调用了成员函数,但出现了错误expected unqualified-id before ‘.’ token A.f1()
。
#include <iostream>
class A
{
public:
void f1 ()
{
std::cout<<"In class A::f1()";
}
};
class B:public A
{
public:
void f2()
{
std::cout<<"In class B::f2() \n";
std::cout<<"Calling A::f1() \n";
A.f1(); //Error
}
};
int main()
{
B obj1;
obj1.f2();
return 0;
}
在上述情况下,从
f1()
访问B::f2()
是公共(public)继承的唯一推荐方法? 最佳答案
你只需要打电话
f1();
或者您的派生类具有自己的f1函数(覆盖)调用
A::f1();
关于c++ - 从派生类调用父类成员函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57023176/