在Print()
内调用Inherit::Foo()
时,没有错误。但是当它在Foo()
编译器外第二次被调用时会抛出一个错误。为什么呢?
class Base{
public:
void Print(){
cout<<"\n Inside Base";
}
};
class Inherit:public Base{
void Foo(){
Print(); //Function called successfully
}
Print(); //Error says expilicit type is required.
}
答案 0 :(得分:1)
因为您试图在Print()
内声明一个函数Inherit
。
你没有在那里打Print()
。
就像说:
int main()
{
randomVariableName;
}
未指定randomVariableName
是什么。 (int randomVariableName;
是正确的)