首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
56
问题
有如下程序:
#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://kaotiyun.com/show/PFfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>1:-i)cout
要定义整型数组x,使之包括初值为0的三个元素,下列语句中错误的是()。
负责数据库中查询操作的数据库语言是
下列字符串中不能作为C++标识符使用的是()。
有如下语句序列:charstr[10];cin>>str;当从键盘输入“Ilovethisgame”时,str中的字符串是()。
软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于()。
数据库应用系统中的核心问题是( )。
字符串“a+b=12\n\t”的长度为()。
循环队列的存储空间为Q(1:100),初始状态为front=rear=100。经过一系列正常的人队与退队操作后,front=rear=99,则循环队列中的元素个数为()。
在数据库中,产生数据不一致的根本原因是
随机试题
男性,78岁。因突然意识丧失数秒来诊,脉搏35次/分,听诊心率35次/分,每分钟可闻及4~5次响亮的第一心音。治疗上应首选
患儿,男,2周4个月,出现发热、头疼、呕吐、烦躁,诊为化脓性脑膜炎,其不正确的护理措施为
治疗厌食脾胃气虚证的首选方剂是
患者经临床检测诊断为机体铁储存不足,进行血液指标分析,可出现下降的为
投保人因过失未履行如实告知义务,对保险事故的发生有严重影响,且影响保险人决定是否同意承保,则()。
“仁者爱人”“美德即知识”分别是古代东西方两位思想家的主张,他们是()。
工厂组织职工参加周末公益活动,有80%的职工报名参加。其中报名参加周六活动的人数与报名参加周日活动的人数比为2:1,两天的活动都报名参加的人数为只报名参加周日活动的人数的50%。则未报名参加活动的人数是只报名参加周六活动的人数的()。
SDR是()。
设z=ln(),则=_________.
It’shotnowinAfghanistan,where35%ofthepopulationisunder-fed.Butsoonitwillbecold,andmanyofthecountry’sroads
最新回复
(
0
)