如何编写两个类,其中一个取决于另一个? C ++

时间:2015-03-02 17:10:51

标签: c++

我必须编写一个包含2个类的代码,其中一个依赖于另一个如果能帮助我,请看图像(只是为了简化)?

我无法放置图片

1 个答案:

答案 0 :(得分:1)

在c ++中,你不能创建两个类A和B,其中A将具有B的成员变量,而B将具有A的成员变量。这是因为编译器在解析成员时必须知道大小。如果你考虑一下,这个结构将是无限大小:

  一个将有B将有A将有B将有A ....

这就是无法完成的原因。

您只能将指针作为变量。这是因为,指针在最后,只是内存地址而已,而内存地址总是已知的(4或8个字节)。

  

A将有B *,就是这样。

     

B将拥有A *,而这就是全部。

为了达到这个目的,你可以做前进声明,例如。