【发布时间】:2020-03-22 11:35:56
【问题描述】:
我试图在派生类中调用与基类中存在的同名的函数。该函数只是打印类元素。 例如:
class A // Base Class
{
public:
string a;
int b;
A(){}; //Default Constructor
A(string x,int y):a(x),b(y){} //Parametrized Constructor
~A(){}; //Destructor
void printInfo()
{
cout << a << endl;
cout << b << endl;
};
};
class B:public A // Derived Class
{
public:
string c;
B(){}; //Default Constructor
B(string z):c(z){} //Parametrized Constructor
~B(){}; //Destructor
void printInfo()
{
cout << a << endl;
//I am trying to call printInfo of A inside this function
};
};
所以在输出中,当我创建B 的对象(比如说B example;)并尝试使用B 类的printInfo() 成员函数(例如:example.printInfo();)时,我会先打印c然后是 a 和 b。此外,它不限于 2 个类,而是 5 个以上具有共同 printInfo() 成员函数的类。我如何做到这一点?
【问题讨论】:
-
您的
printInfo需要返回类型。然后你就做A::printInfo()… -
@MichaelKenzel 抱歉,我的成员函数的类型就不说了。这是一个
void函数,所以它不返回任何东西。我更新了代码。
标签: c++ inheritance derived-class base-class