C++ Inheritance: Redefining base class functions [4]