【发布时间】:2017-04-16 18:12:38
【问题描述】:
我正在做一个项目,需要多个类,其中一些是继承的!! 所以我在定义之前在主类中使用了一个继承类! 请帮助我如何使用原型声明继承类。谢谢!!
例子:
class A
{
/*data*/
};
class B:public A
{public:
void func()
{
C obj;
}
};
class C:public B
{
};`
【问题讨论】:
-
你需要展示你拥有的代码
-
您的意思是要转发声明吗?如果是这样,前向声明产生完整类型,并且不可能从不完整类型继承。
-
@DanielCollier 现在看我写了一个例子!!
-
@RishabhSaxena 我不知道你想要什么,你不能从不完整的类型继承。您也不能实例化不完整类型的对象,您所能做的就是创建不完整类型的指针或引用的实例。
-
不确定你想要完成什么,但无论如何你可以做的是你应该做的事情:将声明和实现分离到头文件和源文件中。在您的情况下,这将产生 6 个文件,A.h、A.cpp、B.h 等。由于 C 仅用于 B::func 的实现,因此没有问题,因为 B.cpp 将仅包含 C.h 而 B.h 将不需要C,这里没问题。
标签: c++ oop inheritance function-prototypes