我有一个与 C++ 中的私有继承有关的问题。我的问题基于与此页面相关的参考。(在标题“但是如果我们确实需要继承怎么办? ”)
重点是我声明了一个带有公共虚函数的基类。然后我在私有继承下继承基类并将其命名为派生类。如下所示
class base {
public:
base() {}
virtual ~base() {}
virtual void func_1() {
cout<<"base func1"<<endl;
}
void func_t() {
cout<<"base funct"<<endl;
func_3();
}
private:
void func_3() {
cout<<"base func3"<<endl;
func_1();
}
};
class derived: private base {
public:
derived() {}
~derived() {}
virtual void func_1() {
cout<<"derived func1"<<endl;
}
};
base* b = new derived;
b->func_t();
上述语句给出的错误是 base 是派生的不可访问的基础。如果我想调用 func_1 作为派生的上述函数调用函数的一部分,我该怎么办?