首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
13
问题
有如下程序:
#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打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数sum(intA[NUM][NUM],intn)实现的功能是计算矩阵中所有非质数数字的和。提示:函数isPrime(intn)的功能是判定
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数:intfactorial(intn):求出n的阶乘,必须使用递归调用。如果n小于1则返回0。注意:不能修改函数的其他部分。#include#in
若有函数原型声明为"voidfun(int*x,int&y,intz=3);",下列叙述中,错误的是
下列关于派生类构造函数和析构函数的表述中,错误的是
下列有关类成员的叙述中,正确的是
p是指向ClassA类型对象的指针。执行deletep;时,系统自动调用
关于函数重载,下列叙述中错误的是()。
下列关于this指针的描述中,正确的是()。
下列关于指针的运算中,()是非法的。
下列关于this指针的叙述中,正确的是()。
随机试题
可燃液体的蒸气与空气混合后,遇到明火而引起瞬间燃烧,液体能发生燃烧的最低温度称为该液体的()。
股份有限公司的股东大会在下列何种情形下应当在2个月内召开临时股东大会?()
危险化学品经营单位不得有以下行为()。
2005年汇总纳税时,国外、国内投资收益可抵免企业所得税( )万元。2006年计算应纳税所得额时,准予扣除的广告费、业务宣传费、业务招待费共计( )万元。
关于定金的说法,正确的有()。
360度考评方法中,对从事服务业、销售业的人员特别重要的评价方法为()。
2012年非金融领域新批外商直接投资企业24925家,比上年下降10.1%。实际使用外商直接投资金额1117亿美元,下降3.7%。2012年非金融类埘外直接投资额772亿美元,增长28.6%,比上年提高26.8个百分点。2012年对外承包工程业务完成营
()是德国戏剧家席勒的作品。[2010年真题]
TodayBobwaslateagainforclassbecauseheoverslept(睡过头),buthe______anexcuseofbeingill.
Howhardisittogetbeautifulhair?Beautifulhaircannotbetakenforgranted.Environmentalfactors,chemicaltreatments
最新回复
(
0
)