我遇到了一个 c++ 问题。我有一个基类,它在类的私有可见区域内有一个自引用对象指针。我在基类中有一个构造函数来初始化这两个指针。现在我有我的派生类,它的访问说明符是私有的(我想让我的基类的公共成员函数私有)。现在通过我的派生类的成员函数,我想创建一个对象指针,它可以指向基类的私有数据,即那些自引用对象指针。我的代码是:
class base{
private:
base *ptr1;
int data;
public:
base(){}
base(int d) { data=d }
};
class derived:private base{
public:
void member()
};
void derived::member()
{
base *temp=new base(val); //val is some integer
temp->ptr1=NULL; //I can't make this happen. To do this I had to declare all the
//private members of the base class public.
}