【问题标题】:Dynamic array that contains objects from the class and objects from another class包含来自该类的对象和来自另一个类的对象的动态数组
【发布时间】:2016-05-17 15:45:10
【问题描述】:

我有 2 节课, 在这些类中的每一个中,我都必须创建一个动态数组,该数组可能包含来自这两个类的对象。

例如: 类 - 1:美人鱼 类 - 2:金鱼

每个类都有一个变量 int "offspring",还应该有一个大小为 "offspring" 的动态数组,数组中的每个对象可以是 Mermaid 或 GoldFish。

问题是我不知道哪个类应该固有以及来自谁,以及我是否应该使用另一个类作为通用容器。

非常感谢

【问题讨论】:

  • 使用std::vector<std::unique_ptr<AquaticCreature>> 并使AquaticCreature 成为两个类的抽象基类。

标签: c++ inheritance polymorphism


【解决方案1】:

如果我正确理解了这个问题,这是一个简单类层次结构的教科书示例。由于美人鱼和金鱼都是水生生物,因此将所有常见行为放入顶级 AquaticCreature 类,然后让美人鱼和金鱼都继承它是有意义的。

【讨论】:

    猜你喜欢
    • 2021-09-10
    • 2018-02-12
    • 2014-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-13
    相关资源
    最近更新 更多