首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class B { public: virtual void show() { cout
有如下程序: #include using namespace std; class B { public: virtual void show() { cout
admin
2021-05-06
19
问题
有如下程序:
#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;执行fun1会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://jikaoti.com/ti/Bmh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classMountain{intheight;public:Mountain(inth=0):height(h){}
关于函数中的,下列表述中错误的是()。
下列关于函数参数的叙述中,正确的是()。
有如下程序:#include<iostream>usingnamespacestd;intmain(){hatsum;for(inti=0;i<6;i+=3){sum=i;fo
使用VC6打开考生文件夹下的源程序文件modi3.epp。此程序的运行结果为:InCDerive’sdisplay().b=1InCDerive2’sdisplay().b=2其中定义的类并不完整,按要求完成下列操作,
已知主函数中通过如下语句序列实现对函数模板swap的调用:inta[10],b[10];swap(a,b,10);下列对函数模板swap的声明中,会导致上述语句序列发生编译错误的是()。
若有函数模板mySwap和一些变量定义如下:()。template<classT>voidmySwap(Tx,Ty);doubled1,d2;inti1,i2;下列对mySwap的调用中,错误的是
下列叙述中正确的是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和C代码,完成空出部分的程序,实现函数fun(char*s1,char*s2)将字符串s2连接在字符串s1之后,构成一个首指针为s1的字符串。注意:不能修改函数的其他部分。
设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,reaF15,则循环队列中的元素个数为()。
随机试题
A、Sendinawrittenapplicationassoonaspossible.B、Readtheadvertisementagainformoredetails.C、Prepareforaninterview
经验上,人们常认为群体决策优于个体决策,实际上个体决策与群体决策各有利弊,在决定是否采用群体决策时,最需要考虑()。
根据赫塞和布兰查德对成熟度的定义,可以把成熟度分为工作成熟度和______。
某分部工程双代号时标网络计划执行到第2周末及第8周末时,检查实际进度后绘制的前锋线如图7-7所示,图中表明( )。
环境污染主要来自于对能源的利用,目前主要的能源是:
不属于干部教育的学校是()
博鳌亚洲经济论坛
[2000年MBA真题]血液中的高浓度脂肪蛋白含量的增多,会增加人体阻止吸收过多的胆固醇的能力,从而降低血液中的胆固醇。有些人通过有规律的体育锻炼和减肥,能明显地增加血液中高浓度脂肪蛋白的含量。以下哪项,作为结论从上述题干中推出最为恰当?
VBA中去除前后空格的函数是()。
在设计窗体时,字段"评价"只能输入"很好"、"好"、"一般"、"较差"和"很差",可使用的控件是
最新回复
(
0
)