I am assuming this is one of those "just not how it works" issues, but I fail to see why. Why do I need to qualify B
's call to A
s Start
with A::
. If I change B::Start()
to B::DoSomethingElse()
I could call a parameter less Start()
without A::
. So what is happening?
#include <iostream>
#include <string>
class A {
public:
void Start(){
}
};
class B : public A {
public:
void Start(int x){
Start(); // cannot call this
A::Start(); // can call this
}
};