首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class B { public: virtual void show() { cout
有如下程序: #include using namespace std; class B { public: virtual void show() { cout
admin
2021-05-06
20
问题
有如下程序:
#include
using namespace std;
class B {
public:
virtual void show() { cout<<"B"; }
};
class D: public B {
public:
void show() { cout<<"D"; }
};
void fun1(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;
fun1(p);
fun2(b);
fun3(d);
delete p;
return 0;
}
执行这个程序的输出结果是( )。
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数,本题中定义类B的对象 b、对象指针*p=new D以及类D的对象d;执行fun1会调用派生类的show函数,因为show函数为虚函数,而调用fun2、fun3仍然为基类的show函数,所以本题答案为C。
转载请注明原文地址:https://kaotiyun.com/show/PFfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;intmain(){cout.fill(’*’);cout.width(6);cout.fill(’#’
下列枚举类型的定义中,包含枚举值3的是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数:intfactorial(intn):求出n的阶乘,必须使用递归调用。如果n小于1则返回0。注意:不能修改函数的其他部分。1#include<
语句int*p=&k;定义了指针P,与这个语句等效的语句序列是()。
下列选项中不属于结构化程序设计原则的是()。
程序调试的任务是()。
数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是()。
某个工厂有若干个仓库,每个仓库存放有不同的零件,相同零件可能放在不同的仓库中。则实体仓库和零件间的联系是
在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是()。
原因排除法属于()。
随机试题
治疗早期胃癌的有效方法是
未曾接种卡介苗的3岁以下儿童,结核菌素试验阳性提示
某初产妇,妊娠37周,为羊水过多患者,规律宫缩10小时,破膜后突然剧烈腹痛,少量阴道流血,查血压12.0/8.0kPa,(90/60mmHg),脉搏110次/分,宫底剑突下一横指,有压痛。胎心胎位不清,宫口开2cm,S+1,该例患者最适当的处理是
在价值工程活动中,常用的方案综合评价方法包括( )。
下列公文标题拟写不正确的是()。
【2012.福建】在我国,课程具体表现为课程计划、_________和_________。
设函数S(x)=∫0x|cost|dt求.
=_______
Properclothes______formuchinbusiness.That’swhy;youseemostbusinesspeopledressformally.
MasteringtheArtofConversation1.MakeeyecontactGivea【T1】smilinglook【T1】______Avoidforcinginteractiononuninterested
最新回复
(
0
)