覆盖和隐藏

来源:互联网 发布:linux file命令 x86 编辑:程序博客网 时间:2024/05/01 04:13
void VBase::xfn(int i)
{
cout<<"Base::xfn(int i)"<<endl;
}


void VBase::yfn(float f)
{
cout<<"Base::yfn(float f)"<<endl;
}


void VBase::zfn()
{
cout<<"Base::zfn()"<<endl;

}


void Derived::xfn(int i) //覆盖了基类的xfn函数
{
cout<<"Derived::xfn(int i)"<<endl;
}


void Derived::yfn(int c) //隐藏了基类的yfn函数
{
cout<<"Derived::yfn(int c)"<<endl;
}


void Derived::zfn() //隐藏了基类的zfn函数
{
cout<<"Derived::zfn()"<<endl;
}


int _tmain(int argc, _TCHAR* argv[])
{
Derived d;


VBase *pB = &d;
Derived *pD = &d;


pB->xfn(5); //输出:Derived::xfn(int i)
pD->xfn(5); //输出:Derived::xfn(int i)


pB->yfn(3.14f);//输出:Base::yfn(float f)
pD->yfn(3.14f);//输出:Derived::yfn(int c)


pB->zfn(); //输出:Base::zfn()
pD->zfn(); //输出:Derived::zfn()


system("pause");
return 0;
}


//构成函数覆盖的条件为:

//1.基类函数必须是虚函数(使用virtual关键字进行声明)。

//2.发生覆盖的两个函数要分别位于派生类和基类中。

//3.函数名称与参数列表必须完全相同


//函数的覆盖是发生在派生类与基类之间,两个函数必须完全相同,并且都是虚函数。那么不属于这种情况的,就是隐藏了。

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 _判断素数Description输入一个正整数r(0 输入一个正整数r(0 全排列 office激活 office2013激活 g_tk C#网络通信 C语言笔试 ucos qt包含文件 科大讯飞java 1,定义一个接口Assaultable(可攻击的),该接口有一个抽象方法attack()。2,定义一 FlyAudioVoice 2023 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 Minecraft 1204:剔除相关数 平坦衰落信道2FSK差错性能分析 平坦衰落信道 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 手机是现在人们必不可少、最重要的通讯工具,拥有一款简单、实用、易用的手机通讯录,将会使你的手机更加好 手机是现在人们必不可少、最重要的通讯工具,拥有一款简单、实用、易用的手机通讯录,将会使你的手机更加好 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 61858 61850 全国市级城市拼音 pycr rpyc pry 安德地产公司 安德地产年报 pycharm安装 高文 李皓 王煊 赵瀚 夜的命名术 我的治愈系游戏 全职艺术家 星门 长夜余火