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;
}
相关推荐
hy____12328 分钟前
C++多态的详细讲解
开发语言·c++
superior tigre35 分钟前
C++学习:六个月从基础到就业——C++20:范围(Ranges)进阶
c++·学习·c++20
小葡萄202538 分钟前
黑马程序员C++2024版笔记 第0章 C++入门
开发语言·c++·笔记
不二一1 小时前
linux c++头文件生成源文件 使用python脚本 配置vim快捷键
linux·c++·python
Lazy Dave2 小时前
C++开源库argh使用教程
c++·开源·argh
奇树谦2 小时前
VTK|显示三维图像的二维切片
c++·vtk·qt5·三维显示
老歌老听老掉牙3 小时前
Open CASCADE学习|几何体切片处理:OpenMP与OSD_Parallel并行方案深度解析
c++·学习·open cascade·切片处理
superior tigre3 小时前
C++学习:六个月从基础到就业——C++20:范围(Ranges)基础
c++·学习·c++20
虾球xz4 小时前
游戏引擎学习第294天:增加手套
c++·学习·游戏引擎
龙湾开发5 小时前
计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 13.几何着色器(二)爆炸效果&修改图元类型
c++·笔记·学习·3d·图形渲染·着色器