c – 实现类中类的访问方法

我有一节课,假设a.cpp.在这个类的私有属性中,我有一个指向b.cpp和c.cpp的指针,其中b.cpp是虚拟接口类的实现,让我们调用d.cpp.另外,在c.cpp的私有属性中,我有一个指向接口类d.cpp的指针.

我想访问b.cpp类中a.cpp类的一个方法.我怎样才能做到这一点?

例子可以是
好吧,让我在课堂上给出一些方法

class A{
private:
  B *_classB;
  C *_classC;
public:
  int add(int, int);
}

现在,接口类是D.
所以,在D级,我们有

class D{
public:
  virtual int mul(int, int) = 0;
}

现在,B类是接口类D的实现
所以,B看起来像:

class B{
private:
   int first_num;
   int second_num;

public:
   virtual int mul(int a, int b);
}

而且C类也有指向接口类的指针,所以C看起来像

class C{
private:
  D *_classD;
}

现在,我想在类B中调用方法int add(int,int).

最佳答案 因为A包含B并且没有其他关系,所以您需要在B类中保留指向所有者A的指针

点赞