如何将基 class 成员引入派生 class 定义,但只有一个重载?
How can I introduce base class member to derived class definition, but only one overload?
有了 'using declarations',我可以在 class 的定义中引入一个基础 class 成员:
class Base {
public:
void baseMemberFn();
/* ... */
};
class Derived : private Base {
public:
using Base::baseMemberFn;
};
但是,在我的例子中,我只想 'use' 基础 class 成员的一个特定重载。
有这样做的语法吗?
没有语法。
创建一个同名的新成员函数,将调用转发给父函数:
void baseMemberFn() {Base::baseMemberFn();}
有了 'using declarations',我可以在 class 的定义中引入一个基础 class 成员:
class Base {
public:
void baseMemberFn();
/* ... */
};
class Derived : private Base {
public:
using Base::baseMemberFn;
};
但是,在我的例子中,我只想 'use' 基础 class 成员的一个特定重载。 有这样做的语法吗?
没有语法。
创建一个同名的新成员函数,将调用转发给父函数:
void baseMemberFn() {Base::baseMemberFn();}