首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的类声明: #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
45
问题
有如下的类声明:
#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);
cc.disp();
rb.disp();
return 0;
}
运行这个程序的输出是
选项
A、ACC
B、ACB
C、BCC
D、BCB
答案
A
解析
程序定义了类AA,成员函数disp是虚函数;类BB公有继承AA,重新定义了函数disp,由虚函数的性质可知,即使BB中未使用virtual修饰disp,函数disp仍然是虚函数;类CC公有继承了BB,同样重新定义了虚函数disp;main函数中定义了BB类对象bb,CC类对象cc,BB类引用rb,rb被初始化指向cc;然后调用plot函数,由于plot函数的形参是AA类对象a,不满足多态性中调用者必须要是引用或者指针类型的条件,所以无论实参是bb或cc,a.disp()调用的都是AA类中的函数disp,输出"A";cc.disp()显然调用的是类CC中的函数,输出"C";rb.disp(),由于rb是引用,指向的是类CC对象cc,所以这里由多态性可知调用的是CC类中的disp函数,输出"CC";程序输出结果为:"ACC";答案为A。
转载请注明原文地址:https://kaotiyun.com/show/RFfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于this指针的叙述中,正确的是()。
对于语句cout<<endl<<x;中的各个组成部分,下列叙述中错误的是()。
下列关于模板的叙述中,正确的是()。
生成派生类对象时,派生类构造函数调用基类构造函数的条件是()。
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序:#includeusingnamespacestd;cla
程序调试的任务是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和C代码,完成空出部分的程序,实现函数fun(char*s1,char*s2)将字符串s2连接在字符串s1之后,构成一个首指针为s1的字符串。注意:不能修改函数的其他部分。
请打开考生文件夹下的解决方案文件proj3,其中定义了一个字符串变量类stringVar。类成员的说明在程序注释中。请在//*********333*********和//*********666*********之间填写stringVar成员函数和友元函
在E-R图中,用来表示实体联系的图形是( )。
对于循环队列,下列叙述中正确的是()。
随机试题
求解直流复杂电路中某一支路的电压、电流或功率时,采用()计算较为方便。
我国向世界范围内提供发射人造卫星的任务属于()
外阴白色病变的诊断下列哪项是错误的
乳牙龋病的好发牙是
甲、乙两公司因合同纠纷向某仲裁委员会申请仲裁,裁决作出后,双方都不满意,在此情况下,下列表述中()是正确的。
从某种角度看,佛祖本质上就是一个具备现代意识的知识分子。他开创的佛教完全不像宗教,不仅没有一个全知全能的上帝,也不提倡个人崇拜,不搞繁琐的祭祀仪式。他倡导的轮回说可以理解为世间万物都有联系,互为因果,这在某种程度上是非常正确的。他相信人人平等,反对种族歧视
圈养动物是比野生动物更有意思的研究对象。因此,研究人员从研究圈养动物中能够比从研究野生动物中学到更多的东西。上面的论证依赖于下面哪一个假设?
阅读以下文字,完成下面问题:生态整体主义的核心思想是:把生态系统的整体利益作为最高价值而不是把人类的利益作为最高价值,把是否有利于维持和保护生态系统的完整、和谐、稳定、平衡和持续存在作为衡量一切事物的根本尺度,作为评判人类生活方式、科技进步、经济
在Access数据库中要删除一个表中的一个字段,可使用的SQL命令是
A、Inthesecondhalfofthe19thcentury.B、Inthefirsthalfofthe20thcentury.C、Inthe1960s.D、Intheearly1800s.DWhend
最新回复
(
0
)