Kaznov
Kaznov

Reputation: 1163

How can I introduce base class member to derived class definition, but only one overload?

With 'using declarations' I can introduce a base class member into definition of my class:

class Base {
    public:
    void baseMemberFn();
    /* ... */
};

class Derived : private Base {
    public:
    using Base::baseMemberFn;
};

However, in my case, I want to only 'use' one specific overload of the member from the base class. Is there a syntax to do so?

Upvotes: 0

Views: 99

Answers (1)

HolyBlackCat
HolyBlackCat

Reputation: 96334

There's no syntax for that.

Make a new member function with the same name, that forwards the call to the parent:

void baseMemberFn() {Base::baseMemberFn();}

Upvotes: 3

Related Questions