C++重载、覆盖、隐藏的区别与举例

发布时间:2020-06-18 13:09:45 作者:银河星君
来源:网络 阅读:535

参考博客:http://blog.csdn.net/hexi_2000/article/details/4392107

//重载,覆盖,隐藏举例
#include <iostream>

using namespace std;

class A
{
public:
    int n;
    void fun()
    {
        cout<<"A::fun()"<<endl;
    }
    virtual void fun(int a)
    {
        cout<<"A::fun(int)"<<endl;
    }
    void fun(double f)
    {
        cout<<"A::fun(double)"<<endl;
    }
};

class B:public A
{
public:
    int n;
    void fun(int a)
    {
        cout<<"B::fun(int)"<<endl;
    }
    void fun(double f)
    {
        cout<<"B::fun(double)"<<endl;
    }
};

int main(int argc, char *argv[])
{
    A a;
    B b;
    A *p;
    
    p=&b;
    p->fun();
    p->fun(20);
    p->fun(19.9);
    
    b.fun(19.9);
    b.n=5;
    cout<<b.A::n<<endl;
    
    return 0;
}

C++重载、覆盖、隐藏的区别与举例

推荐阅读:
  1. 类成员函数的重载、覆盖和隐藏区别?
  2. C++多态,继承,重载,隐藏,覆盖的关系

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

隐藏 覆盖 重载

上一篇:Linux 中的MYSQL数据库常用管理语言

下一篇:MongoDB的安装与配置

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》