首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout
admin
2020-06-29
40
问题
有如下程序:
#include
using namespace std;
class B{
public:
virtual void show(){cout<<"B";}
};
class D:public B{
public:
void show(){cout<<"D";}
};
void fun1(B*ptr){ptr->show();}
void fun2(B&ref){ref.show();}
void fun3(B b){b.show();}
int main()
{
B b,*p=new D:
D d;
fun1(P);
fun2(b);
fun3(d);
delete p;
return 0;
}
执行这个程序的输出结果是( )。
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,本题中定义类B的对象b、对象指针*p=new D以及类D的对象d;执行funl会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/Ybyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)完成默认构造函数TestClass的定义,使得TestClass对象的类型为int,默认值为a=0,b=0,c=0,请在注释∥*
使用VC6打开考生文件夹下的源程序文件modil.cpp,咀该程序运行时有错,请改正程序中的错误,使程序输出的结果为:Numbe=8注意:错误的语句在∥********error********的下面,修改该语句即可。#includec
用VC6打开考生文件夹下的源程序文件modi.3.cpp。其中定义的类并不完整,按照要求完成下列操作,将类的定义补充完整。在屏幕和程序modi3.txt文件中输出以下结果:HelloTest出现异常情况其中定义的类并不完整,
已知枚举类型声明语句为:enumCOLOR{WHITE,YELLOW,GREEN=8,RED,BLACK=15};则枚举常量RED的值为
下列关于模板的叙述中,错误的是
下列有关类成员的叙述中,正确的是
有如下头文件:intf1();staticintf2();classMA{public:intf3();staticintf4();};在所描述的函数中,具有隐含的this指针的是()。
下列关于基类和派生类关系的叙述中,正确的是
有如下头文件:intf1();staticintf2();classMA{public:intf3();staticintf4();};在所描述的函数中,具有隐含的this指针的是()。
随机试题
斯克里文提出了一种不受预定活动目标影响的评价模式,即()
气焊气割时的主要劳动保护措施是通风措施和个人保护措施。
炎性假瘤的辅助诊断中,错误的是()
主动脉瓣关闭不全时主要引起
动力循环中能量利用系数K的表述正确的是()。
合同担保方式中,既可以用当事人自己的财产又可以用第三人的财产作担保的方式是()。
科举制产生于()。
领导者的三项基本技能是指()。
RunningfortheofficeofthePresidentoftheUnitedStatesisexceptionallyarduousandshouldnotbeundertakenbythe【C1】___
打开考生文件夹下EXC.xlsx文件,将sheet1工作表的A1:D1单元格合并为一个单元格,水平对齐方式设置为居中;计算“总计”行的内容和“人员比例”列的内容(人员比例=数量/数量的总计,单元格格式的数字分类为百分比,小数位数为2),将工作表命名为“人力
最新回复
(
0
)