首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #inc1ude<iostream> using namespace std; class B{ public: virtual void show() {cout
有如下程序; #inc1ude<iostream> using namespace std; class B{ public: virtual void show() {cout
admin
2016-11-23
29
问题
有如下程序;
#inc1ude<iostream>
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(B &ref) {ref.show();}
void fun3(B b) {b.show(); }
int main() {
B b,*p=new D;
D d;
funl(p);
fun2(b);
fun3(d);
return 0;
}
程序的输出结果是( )。
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
此题考查的是虚函数与多态性。在成员函数的声明前面加上virual关键字,即可把函数声明为虚函数;在C++中,一个基类指针可以用于指向它的派生类对象,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本。此题中,funl()和fun20的形参分别是基类的指针和引用,给funl()传入的实参是指向派生类对象的指针p,funl()将调用D类中的show0输出字符‘D’;给fun2()出入的实参是基类对象,fun2()调用类B中的show0输出字符‘B’;fun3()由于形参是基类对象,调用的始终都是基类的show0,输出字符‘B’。故最终输出结果是DBB。
转载请注明原文地址:https://kaotiyun.com/show/OzAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列有关析构函数的说法中,错误的是()。
由关系数据库系统支持的完整性约束是指______和参照完整性。
下面程序的运行结果为#include<iostream,h>classA{public:A(){cout<<"1";}~A(){cout<<"2";}};
在C++语言中每个类都有一个【】指针,该指针指向正在调用成员函数的对象。
表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是
以下叙述中正确的是
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
在算法正确的前提下,评价一个算法的两个标准是【】。
关于this指针的说明不正确的是
若有说明语句chara[]="Itismine";char*p="Itismille";则以下不正确的叙述是()。
随机试题
A.调查一线资料B.确立组织目标C.划分业务工作D.确定职责和权限E.提出组织结构的基本框架组织设计的第一步是
A.环形红斑B.肢端硬性肿胀C.丘疹样荨麻疹D.湿疹样改变E.蝶形红斑全身发病型幼年型类风湿关节炎可有
在疾病进行期,出现中性粒细胞核右移,常提示
患者,女,25岁,近来长期久坐加班,2天前突然出现高热、腰痛、尿频、尿痛来院就诊,诊断为急性肾盂肾炎。尿常规检查时最可能出现的结果是
《建设工程安全生产管理条例》规定,()负责对安全生产进行现场监督检查。
李某为其母赵某投保人寿险,在确定具体受益人时李某与赵某发生了分歧。下列关于如何确定受益人的表述中,符合保险法律制度规定的是()。
交通基础设施建设常被国内外学者用来解释城乡收入差距问题,而关于交通基础设施建设对城乡收入差距的影响方向则倍受关注。以京津城际高速铁路的开通为标志,中国交通基础设施建设正在迅速变化。那么,高铁开通将会对城乡收入差距产生怎样的影响?高铁开通对城乡收入
一个民族的生命基因,熔铸着文化的力量:一个民族前进的每一行足印,都闪耀着文化的光芒;一个民族的兴衰存亡,说到底是文化的兴衰存亡。当今世界各国,除了经济、科技、军事力量等“硬实力”的比拼,文化软实力的竞争也日趋激烈,因为文化愈来愈成为民族凝聚力和创造力的重要
下列关于线性链表的叙述中,正确的是( )。
ThefollowingnovelswerewrittenbyMarkTwainEXCEPT
最新回复
(
0
)