gpt4 book ai didi

c++ - 父类(super class)是否可以有子类对象? C++

转载 作者:行者123 更新时间:2023-11-28 06:39:23 26 4
gpt4 key购买 nike

那么,假设我有一个名为 Lights 的父类(super class)。然后我有两个扩展 Lights 的子类,Light_Omni 和 Light_Spot。 Lights 中可以有 Light_Omni 和 Light_Spot 对象吗?

我尝试在 Lights.h 中对子类进行前向声明,正如我在某处读到的那样,虽然与我的情况不同,但它很相似。但我要么做错了,要么根本行不通。

class LG_Light_Spot;
class LG_Light_Omni;

class LG_Lights
{
LG_Light_Spot obj1;
LG_Light_Omni obj2;
};

class LG_Light_Spot :
public LG_Lights
{};

class LG_Light_Omni :
public LG_Lights
{};

现在,当我尝试构建项目时遇到“ Unresolved external 问题”。希望这不是一个愚蠢的问题。

最佳答案

不,这不可能。定义将是递归的; LG_Lights 的大小是多少?

你不能有 struct A { A obj; }; 出于同样的原因。

关于c++ - 父类(super class)是否可以有子类对象? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26225602/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com