有没有办法直接暴露私有(private)父类的一些方法。 在下面的示例中,如果我有一个 Child 类型的对象,我希望能够直接调用其父对象的方法 a(),而不是 b(); 当前的解决方案会生成大量样板代码,尤其是在存在大量参数的情况下。
class Parent {
public:
void a(int p1, double p2, int p3, std::vector <int> &p4);
void b();
};
class Child : private Parent {
public:
void a(int p1, double p2, int p3, std::vector <int> &p4) {
Parent::a(p1, p2, p3, p4);
}
};
最佳答案
您可以使用 using 声明。
class Child : private Parent {
public:
using Parent::a;
};
关于c++ - 有没有简单的方法来公开私有(private)父类 C++ 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2351616/