首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
31
问题
有如下程序:
#include
using namespace std;
class B{
public:
virtual void show(){cout<<"B";}
};
class D:public B{
public:
void show(){cout<<"D";}
};
void funl(B*ptr){ptr->show();}
void fun2(13&ref){ref.show();}
void fun3(13 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
解析
在某基类中声明为vjrtual并在一个或多个派生类中被重新定义的成员函数,本题中定义类B的对象b、对象指针*p=new D以及类D的对象d;执行fun1会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/he8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列定义中,Sample是一个类,()是定义指向对象数组的指针p.
判断char型变量c是否为小写字母的正确表达式是
下面程序的执行结果为#include"iostream"usingnamespacestd;classA{inta;public:
模板对类型的参数化提供了很好的支持,因此
有如下说明:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是
以下4个程序中,不能实现两个实参值进行交换的是()。
C++语言中表示双精度浮点数的关键字是【】。
下列关于C++运算符结合性的说法中,正确的是()。
下列有关函数重载的叙述中,错误的是
在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是()。
随机试题
化工废渣必须进行卫生填埋以减少其危害。()
仲裁委员会通过调解的方式,解决仲裁纠纷的文书是()
下列哪项不是头痛的病因病机
女,33岁,4年前始反复上腹痛,餐前出现,餐后缓解。今晨突然出现剧烈腹痛,来诊。查体:Bp80/40mmHg,体温38.9℃,上腹部压痛、反跳痛及肌紧张,肠鸣音减弱,RBC4.2×109/L,WBC22×109/L。
巴塞尔委员会将商业银行而临的风险划分为八大类,其中包括()。
2010年12月16日,甲公司与乙公司签订了一项租赁协议,将一栋经营管理用写字楼出租给乙公司,租赁期为3年,租赁期开始日为2011年1月1日,年租金为240万元,于每年年初收取。相关资料如下:(1)2010年12月31日,甲公司将该写字楼停止自用,准备出
细胞是生物体进行各种生命活动的基本单位,回答下列问题。多细胞生物中细胞与细胞之间的通讯是其生命活动所必需的,否则生物不能保持其完整性,往往是一种细胞向靶细胞发送信号,靶细胞经过信号接收、__________和响应3个阶段作出相应反应。
Pentium4微处理器物理地址的最大存储空间是( )。
Whataretheytalkingabout?
Readthisfollowingnewsaboutpersonalbranding.ChoosethebestwordorphrasetofilleachgapfromA,B,CorDontheoppos
最新回复
(
0
)