首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的类声明: #include using namespace std; class AA{ public: virtual void disp(){ cout
有如下的类声明: #include using namespace std; class AA{ public: virtual void disp(){ cout
admin
2021-05-06
28
问题
有如下的类声明:
#include
using namespace std;
class AA{
public:
virtual void disp(){ cout<<’A’; }
};
class BB: public AA{
public:
void disp(){ cout<<’B’; }
};
class CC: public BB{
public:
virtual void disp(){ cout<<’C’; }
};
void plot(AA &a){ a.disp(); }
int main(){
BB bb;
CC cc;
BB &rb=cc;
plot(bb);
plot(cc);
rb.disp();
return 0;
}
运行这个程序的输出是
选项
A、AAC
B、AAB
C、BCC
D、BCB
答案
C
解析
程序定义了类AA,成员函数disp()为虚函数;类BB公有继承AA,重新定义了disp()函数;类CC公有继承BB,同样重新定义了disp()函数;类BB中,虽然disp()未用virtual修饰,但是由虚函数性质可知,BB中的disp()函数仍然是虚函数;main()函数中,创建BB对象bb,CC对象cc,使用cc初始化BB类引用rb,然后调用plot函数;plot函数的形参是AA类的引用,通过AA类引用调用disp函数,满足多态性条件,将根据引用所指对象的类型来决定调用哪个disp函数;所以plot(bb)调用类BB中的disp函数,plot(cc)调用CC中的disp函数;输出分别为:"B"、"C";另外由于rb为BB类引用,所指对象是cc,所以运行rb.disp()时调用的是CC中的disp()函数,输出"C",综上,程序输出为:"BCC";答案为C。
转载请注明原文地址:https://kaotiyun.com/show/8Cfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
必须用对大括号括起来的程序段是()。
以下程序的执行结果为()。#inc1ude<iostream.h>c1assSamp1e{intn;public:Samp1e(inti){n=i;}operator++0
下列关于函数模板的表述中,正确的是
要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是()。
若为类MyClass重载运算符"+",下列声明中,错误的是
下面不属于软件设计阶段任务的是
在面向对象方法中,不属于“对象”基本特点的是()。
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是()。
关于关键字c1ass和typename,下列表述中正确的是()。
随机试题
男性,35岁,消瘦、乏力、怕热、手颤2个月,夜间突然出现双下肢弛缓性瘫痪,急诊查体:神志清,血压140/80mmHg,心率108次/分,律齐,甲状腺轻度增大、无血管杂音为明确诊断,应首先进行的检查项目是
A.齿B.发C.瓜D.唇E.胆汁血之余为()。
我国公民向我国法院申请承认与执行甲国法院的离婚财产分割判决,根据我国《民事诉讼法》及相关法律的规定,具有以下哪些情形时,我国法院对该甲国法院判决不予承认与执行?()
建筑物的物质折旧包括()。
某二级公路挡土墙施工,发生质量事故,造成工程质量低劣,达不到合格标准,加固补强后达到合格,该事故属于()。
中国银行业协会的会员单位包括()
非正式群体在学校人际关系中起主导作用。()
下列关于公安机关人民警察转任、调任的说法,不正确的是()。
白化现象,指在正常环境下,植物由于某些内在因素不能形成叶绿素的现象。下列属于白化现象的是:
我国社会主义法的主要来源是()。
最新回复
(
0
)