You can do like this
class myClass{
public:
virtual double fooMethod();
/* ... */
}
class myDerivedClass : public myClass{
public:
double fooMethod() override; // override method, not overload
/* ... */
}
Then if you pass a myDerivedClass
object pointer/reference, and use it to call fooMethod()
, the overriden
method in myDerivedClass
will be called.
The concept is you can override base class method, not overload.