我创建了一个具有一堆继承的类(父类)的类,以便可以使用多态性,但是问题是有两个类相互调用。
因此,我需要向前声明它们,并且我可以向前声明一个类,但是当我向前声明继承的类时,编译器说它不能将指针从一个更改为另一个。
有没有办法对继承的类进行前向声明,使其声明继承自该类?
例如:
class Shape;
class Circle:Shape;
最佳答案
进行前向声明时,无需在类名称之后指定族树。
class Shape;
class Circle;
class Rectangle;
当声明使用继承的类时,编译器将欣赏父类的完整声明。
经验法则是可以使用正向声明来解析指针和引用的声明类型。任何通过指针或引用访问类元素的代码都需要完整的类声明。
关于c++ - 如何转发声明从另一个类C++继承的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29107845/