更好的层次结构创建了哪个玩家类?

时间:2012-08-14 13:59:04

标签: c++ class-hierarchy

哪个类对于将来的实现更容易接受?突击捕食者(多重继承)或女王(多层次结构)?

#include "stdafx.h"
#include<stdlib.h> 

class living
{
public:
    int hitpoints;
    int adaptation;
};

class alien:public living
{
public:
    bool tail;
    bool claws;
    bool legs;
    bool secondary_jaws;
    bool acid_blood;
    alien(){adaptation=1000;hitpoints=50;}
};

class queen:public alien
{
public:
    bool ovipositor;
    bool tertiary_jaws;
};

class predator
{
public:
    bool legs;
    bool arms;
    bool glowstick_blood;

};

class assault_predator:public living,public predator
{
public:
    bool plasma_caster;
    bool infrared_vision;
    assault_predator(){hitpoints=150;adaptation=33;}
};


int main()
{
    assault_predator player1;
    queen player2;

    getchar();
    return 0;
  }

如图所示,突击捕食者分别来自生活捕食者。女王来自外星人,外星人来自生活

问题:哪一个在编程和类层次结构方面更合乎逻辑。

这些球员的缺点是什么?

1 个答案:

答案 0 :(得分:1)

他们只是不同。多重继承允许您将单独的对象组合成一个。多级继承允许进一步指定类型。