C++多态

来源:互联网 发布:mac地址怎么看 编辑:程序博客网 时间:2024/05/17 01:51

        C++的多态靠虚函数实现,下面具体展示几组样例。

#include <iostream>using namespace std;class Base{    public:    void fun()    {        cout<<"1"<<endl;    }    virtual void fun(float x)    {        cout<<x<<endl;    }    virtual void foo()    {        cout<<"2"<<endl;    }};class Devive:public Base{    public:    void fun()    {        cout<<"3"<<endl;    }    void fun(int x)    {        cout<<x<<endl;    }     void fun(float x)    {        cout<<"asd"<<endl;    }    void foo()    {        cout<<"4"<<endl;    }};int main(){    Base b;    Devive d;    Base *dd=&d;    Devive *ddd=(Devive *)&b;    d.fun();    d.foo();    dd->fun();    dd->foo();    dd->fun(3.14f);    ddd->fun();    ddd->foo();    return 0;}

OutPut:


0 0