我理解为什么这不起作用,因为子类不是前向引用,但是这些内容可能具有相同的理论功能吗?
这是我可以使用的实现,如果我可以转发引用子类数组:
class_declare.h:
class parentClass{
int i;
}childClass[100];
someSource0.cpp:
include "class_declare.h"
//manipulate values of the array - but can this refer to one that is forward declared
//and not a new object?
void dosomething(){
childclass[1]=10;
}
someSource1.cpp:
include "class_declare.h"
void dosomethingelse(){
std::cout<<childclass[1];
}
输出:
10
谢谢!。
答案 0 :(得分:0)
polymorphism应该允许您创建父对象列表并使用子对象填充它。
class ParentClass{
int i;
};
ParentClass* ChildClass[100];
这声明了一个列表,该列表可以包含100个ParentClass实例或其任何一个inheretors。