首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下的类声明: #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
38
问题
有如下的类声明:
#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://www.kaotiyun.com/show/zfNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
类的析构函数的作用是
有如下程序:#include<iostream>usingnamespacestd;classCon{charID;public:Con():ID(W){cout<<l
在关系模型中,把数据看成是二维表,每一个二维表称为一个【 】。
有如下类定义: class MyBase { int k; public: MyBase(int n=0):k(n) { } int value( )const{ return k;} };
对下列二叉树进行中序遍历的结果是
下列对队列的叙述正确的是
已知如下程序的输出结果是23,请将画线处缺失的部分补充完整。#include<iostream>usingnamespacestd;classMyClass{public:voidPrint()
在C++语言中,main函数默认返回一个()类型的值。
字符串常量"hello"的字符个数是()。
mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。intmystrlen(char*str){inti;for(i=0;______!=’\0’;i++);
随机试题
比较太平天国起义和义和团运动的异同。(南京大学2014年中国近现代史真题)
什么叫边距?
A.X线立位腹片见肠壁串珠状透亮区B.X线立位腹片见上腹部双泡征C.X线立位腹片见上腹部三泡征D.X线立位腹片见一大液平E.X线立位腹片见双泡征,余腹X见肠内气体存在
预防滴虫性阴道炎哪项不妥
下列关于合议庭评议笔录的表述正确的是()。
两艘同属巴拿马国籍的船舶在韩国海域发生碰撞,后均首先到达我国的大连港。其中一艘“玛丽号”向我国大连中级人民法院提起诉讼,并申请对另一艘碰撞船舶“哥白号”进行扣押。我国法院在审理此案时应适用的法律有:
市场营销渠道成员包括()。
控制是管理人员监视各项活动以保证它们按计划进行并纠正各种偏差的过程。按照控制侧重点的不同把控制工作分为()。
将86个苹果装进三种包装盒,共用了10个包装盒刚好装完。已知大包装盒每个装11个,中包装盒每个装7个,小包装盒每个装5个。问用了几个大包装盒?
教师教年龄较大的学生为主,然后再由他们中的优秀的学生去教年幼的或者学习较差的学生的教学组织形式是
最新回复
(
0
)