首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout
有如下程序: #include using namespace std; class B{ public: virtual void show(){cout
admin
2020-06-29
16
问题
有如下程序:
#include
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(13&ref){ref.show();}
void fun3(13 b){b.show();}
int main()
{
B b,*p=new D;
D d;
fun1(p);
fun2(b);
fun3(d);
delete p;
return 0:
}
执行这个程序的输出结果是( )。
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
在某基类中声明为vjrtual并在一个或多个派生类中被重新定义的成员函数,本题中定义类B的对象b、对象指针*p=new D以及类D的对象d;执行fun1会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/he8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下关于C++语言类的说法中正确的是
C++中运算符优先级由高到低排列正确的是
关于语句#include<iostream>usingnamespacestd;voidmain(){cout<<100.8989663<<’’;com<<fixed<<100.8989663<<’’;cout<<scientific<<100.89
下列程序的输出结果为()。#include<iostream.h)classTestClass{public:TestClass(){val++;}static,intval;};
软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是【 】。
用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了多个类,其中定义的类并不完整,按照要求完成下列操作,将类的定义补充完整;使其输出如下:TC2TC3TC1(1)类TC2公共继承于TC1,请在注释1后
有如下函数模板定义:templateT1Fun(T2n){returnn*5.0;)若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则该调用应表示为()。
下列关于对象初始化的叙述中,正确的是()。
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
下列有关运算符重载的表述中,正确的是
随机试题
猪肉是中国人消费最多的畜肉。()
作者以“鸟宿池边树,僧敲月下门”为例,是为了说明
关于纵向弛豫的叙述,错误的是
多丝正比电离室探测器是
上皮异常增生可表现下列变化,除了
下面有关通过协方差反映投资项目之间收益率变动关系的错误表述为()。
将一个白木质的正方体的六个表面都涂上红漆,再将它锯成64个小正方体.从中任取3个,其中至少有1个三面是红漆的小正方体的概率是().
为了保证公司网络的安全运行,预防计算机病毒的破坏,可以在计算机上采取的方法是()
Childrenareinventinganewlexiconforelectroniccommunicationwitharangeofjargonandsymbolsthatadultsfindhardtou
A、Thecinema.B、Thebank.C、Thepostoffice.D、Thesupermarket.ACouldyoutellmehowtogetto…?是问路的常用句型,表示“您能告诉我到……该怎么走吗?”对话中
最新回复
(
0
)