多重继承/多态性家庭作业

时间:2013-05-02 01:53:43

标签: c++ polymorphism multiple-inheritance

我有一个家庭作业,我有点困惑。该赋值基本上表明我们将使用Multiple Inheritance / Polymorphism以分层方式生成21个类。我知道层次结构应该如何在纸上看,但我想知道我应该使用什么语法。

前几个例子是有机体(“树”的头,动物(有机体的孩子),植物(有机体的孩子),Ectotherm(动物的孩子),Endotherm(动物的孩子)等......

如果您想查看实际作业,请点击此链接。 Homework 10

我不需要确切的代码,但有助于使用虚拟语法,这将非常感激。谢谢:D

1 个答案:

答案 0 :(得分:1)

刚开始使用基类并从中派生出来。使用您描述的类树,您不需要虚拟基础。但是你可能想在你的类中添加一些功能,所以我给你举个例子:

class Organism                          // abstract class (no instantiation)
{
  public:
    virtual string getName() = 0;       // because this method is pure (no body)
};

class Animal : public Organism {};      // also abstract

class Dog : public Animal               // not abstract
{
  public:
    string getName() { return "dog"; }  // because here's an implementation
};

我知道这个网站不是为了做作业,但也许它不仅有助于你,也有助于你的同学= D