首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的类声明: #include using namespace std; class AA{ public: virtual void disp(){ cout
有如下的类声明: #include using namespace std; class AA{ public: virtual void disp(){ cout
admin
2015-07-22
29
问题
有如下的类声明:
#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/VANp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已知有定义constintD=5;inti=1;doublef=0.32;charc=15;则下列选项错误的是
以下不能正确进行字符串赋值初值的语句是()。
在关系模型中,
有以下面程序:#include<iostream>usingnamespacestd;longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));
在面向对象的程序设计中,下列叙述中错误的是
下列叙述中正确的是
下列程序将x、y和z按从小到大的顺序排列,请将下面的函数模板补充完整。template<classT>voidorder(【】){Ta;if(>y){a=X;x=y
下列运算符中,在C++语言中不能重载的是
若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需“要使用的存储类别是()。
当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的【】。
随机试题
设z=x2-xy+siny,求dz.
简述高斯竞争排除原理及其推论。
A.瘤细胞呈梭形,异型性明显B.乳头分支多,被覆上皮细胞核呈毛玻璃样C.滤泡结构,上皮具有不同程度的异型性,浸润被膜和血管D.瘤细胞圆形或多边形,排列成团,分泌降钙素甲状腺梭形细胞未分化癌的病理组织学特点是
传出神经系统药物的作用机制包括
肺结核大咯血的原因是
根据我国2004年实施的伤保险条例》,个体工商户的雇工是否可以享受到工伤保险?()
()是指假设在未进行特别修理或改进的情况下,将资产中所包含的各组成部分进行变卖处置的价值。
教育与社会诸多因素有密切联系,其中,决定教育领导权和受教育权的是()。
关于行政诉讼的表述错误的是()。
Wefeelitisimportanttostartreadingtoyourchildrightfromthestart—theyoungerthebetter!Withlittleones(childrenfr
最新回复
(
0
)