611作业

cpp 复制代码
#include <iostream>

using namespace std;
class Animal
{
private:
    string name;
    string program;
public:
    Animal(){}
    Animal(string name="am",string program="pg"):name(name),program(program){}

    virtual void perfrom()
    {
        cout << name << " " << program << endl;
    }
};
class Hum
{
public:
    virtual void introduce()
    {
        cout << "Human introduce" << endl;
    }

};
class Lion:public Animal,public Hum
{
public:
    Lion(string name = "lion",string program = "eat"):Animal(name,program){}
    virtual void perfrom()
    {
        Animal::perfrom();
    }
    virtual void introduce()
    {
        Hum::introduce();
    }
};
class Elephant:public Animal,public Hum
{
public:
    Elephant(string name = "elephant",string program = "run"):Animal(name,program){}
    virtual void perfrom()
    {
        Animal::perfrom();
    }
    virtual void introduce()
    {
        Hum::introduce();
    }
};
class Monkey:public Animal,public Hum
{
public:
    Monkey(string name = "monkey",string program = "jump"):Animal(name,program){}
    virtual void perfrom()
    {
        Animal::perfrom();
    }
    virtual void introduce()
    {
        Hum::introduce();
    }
};

int main()
{
    Lion l1;
    Animal *p=&l1;
    Hum *q=&l1;
    p->perfrom();
    q->introduce();

    Elephant e2;
    Animal *p2=&e2;
    Hum *q2=&e2;
    p2->perfrom();
    q2->introduce();

    Monkey m3;
    Animal *p3=&m3;
    Hum *q3=&m3;
    p3->perfrom();
    q3->introduce();

    return 0;
}
相关推荐
端平入洛1 天前
delete又未完全delete
c++
端平入洛2 天前
auto有时不auto
c++
哇哈哈20213 天前
信号量和信号
linux·c++
多恩Stone3 天前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc
蜡笔小马3 天前
21.Boost.Geometry disjoint、distance、envelope、equals、expand和for_each算法接口详解
c++·算法·boost
超级大福宝3 天前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
weiabc3 天前
printf(“%lf“, ys) 和 cout << ys 输出的浮点数格式存在细微差异
数据结构·c++·算法
问好眼3 天前
《算法竞赛进阶指南》0x01 位运算-3.64位整数乘法
c++·算法·位运算·信息学奥赛
yyjtx3 天前
DHU上机打卡D31
开发语言·c++·算法
czxyvX3 天前
020-C++之unordered容器
数据结构·c++