c++ 多态

c++ 多态,第1张

C++,多态的原理分析

#include

#include

#include

#define MAX 1000

using namespace std;

//多态

//前提有继承关系

class animal

{

public:

   //虚函数

    virtual void speak()

    {

        cout<<"动物在说话"<

    }

};

//重写 函数返回值类型 函数名 参数列表 完全相同

class cat:public animal

{

public:

    void speak()

    {

        cout<<"小猫在说话"<

    }

};

class dog:public animal

{

    void speak()

    {

        cout<<"小狗在说话"<

    }

};

//执行说话的函数

//地址已绑定 在编译阶段确定函数地址

//猫说话 要地址晚绑定

void dospeak(animal &animal)

{

    animal.speak();

}

void test01()

{

    cat cc;

    dospeak(cc);

    dog dd;

    dospeak(dd);

}

int main()

{

    test01();

    system("pause");

    return 0;

}

c++ 类和对象 多态  多态的基本语法

#include

#include

#include

#define MAX 1000

using namespace std;

//多态

//前提有继承关系

class animal

{

public:

   //虚函数

    virtual void speak()

    {

        cout<<"动物在说话"<

    }

};

//重写 函数返回值类型 函数名 参数列表 完全相同

class cat:public animal

{

public:

    void speak()

    {

        cout<<"小猫在说话"<

    }

};

class dog:public animal

{

    void speak()

    {

        cout<<"小狗在说话"<

    }

};

//执行说话的函数

//地址已绑定 在编译阶段确定函数地址

//猫说话 要地址晚绑定

void dospeak(animal &animal)

{

    animal.speak();

}

void test01()

{

    cat cc;

    dospeak(cc);

    dog dd;

    dospeak(dd);

}

int main()

{

    test01();

    system("pause");

    return 0;

}

C++,j计算器案例

#include

#include

#include

#define MAX 1000

//利用多态实现计算器

//组织结构清晰

//可读行强

//对于前期和后期的扩展以及维护性高

using namespace std;

class abstra

{

public:

    virtual int get()

    {

        return 0;

    }

    int m1;

    int m2;

};

class add: public abstra

{

public:

    int get()

    {

        return m1+m2;

    }

};

class sub:public abstra

{

public:

    int get()

    {

        return m1-m2;

    }

};

void test02()

{

    abstra *abc=new add;

    abc->m1=10;

    abc->m2=10;

cout

delete abc;

}

int main()

{

    test02();

    system("pause");

    return 0;

}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/674825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-19
下一篇 2022-04-19

发表评论

登录后才能评论

评论列表(0条)

保存