前向引用声明

来源:互联网 发布:往复式和旋转式 知乎 编辑:程序博客网 时间:2024/05/16 18:33

为什么需要 前向引用声明?

在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A和类B,A中使用了B定义的类类型,B中也使用了B定义的类类型:

例如:

class A;

class B

{

   A a;//此处错误,没有完整定义A,那么就不能定义完整的对象

};

class A

{

   B b;//正确

};

二、但是可以在给出完整的类的定义前,可以声明类的引用或者对象的指针

例如:

class A;

class B

{

A&a;//正确,前向应用声明了类A,可以使用类对象的引用了

A*c;//正确,前向应用声明了类A,可以使用类对象的指针了

};

1 0