您的位置:首页 > 编程语言 > C语言/C++

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

2017-09-11 19:07 232 查看
参考博客: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;
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  隐藏 覆盖 重载