编译器说第22行(在类doumbClass中)的函数dummy()是不明确的。我该如何解决这个问题?
#include<iostream>
#include<iomanip>
using namespace std;
class BusinessClass {
public :
virtual void dummy(){
cout<<"businessClass"<<endl;
}
};
class EconomyClass {
public:
void dummy() {
cout<<"economyClass"<<endl;
}
};
class DoumbClass : public BusinessClass, public EconomyClass{
public:
void moreDumb(){
dummy();
}
};
int main(int argc, char **argv)
{
DoumbClass xclass;
xclass.moreDumb();
return 0;
}
答案 0 :(得分:1)
您需要指定要调用的基本函数 你可以这样做。
alert(data);
或
void moreDumb() {
EconomyClass::dummy();
}
答案 1 :(得分:1)
如果您可以使用Arkady Godlin方法,如果您事先知道,也可以指定要在类声明中使用哪个dummy
函数。像这样:
class DoumbClass :public BusinessClass,public EconomyClass
{
public:
using BusinessClass::dummy;
//or using EconomyClass::dummy;
};