首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespaee std; class B{ public: virtual void show(){cout
有如下程序: #include using namespaee std; class B{ public: virtual void show(){cout
admin
2015-07-24
64
问题
有如下程序:
#include
using namespaee 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;
retum 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/QcNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于下面定义的类MyClass,在函数f()中将对象成员n的值修改为50的语句应该是()。classMyClass{public:MyClass(intX){n=x;}
C++语言中关键字运算符有new,delete和【】。
只能作为成员函数重载的是
C++语言中类定义中默认的访问权限是
下面程序的运行结果是______。#include<iostream.h>voidmain(){charstr[]="SSSWLIA",c;intk;
设有定义inta=1;floatf=1.2;charc=’a’;,则下列表示错误的是
有如下的程序:#include<iostream>#include<fstream>usingnamespacestd;intmain(){chars[25]="Programminglanguage";o
有如下程序:voidmain(){intx=2,y=3,a,b,c,d;a=(x++>=--y);b=(x==++y);c=
设有定义inta=1;floatf=1.2;charc=‘a’;,则下列表示错误的是
下述关于数据库系统的叙述中正确的是
随机试题
在项目范围管理中,企业管理层主要关注________。
化工厂生产区登高(离地面垂直高度)()必须系安全带。
我国城市社区教育的开展一般在()
下列不属于X线照片影像的物理因素的是
A、乙酰乙酸B、丙二酸C、丙酮酸D、α一酮戊二酸E、草酰乙酸可以直接转变为谷氨酸的物质是
患者,女性,70岁。慢性支气管炎病史30年。一周前感冒后再次出现咳嗽、咳痰。痰白质黏,伴有呼吸困难、乏力。以“慢性支气管炎合并慢性阻塞性肺气肿”入院治疗。指导患者加强腹式呼吸的原因是
企业战略是指企业为了适应未来环境的变化,寻求长期生存和稳定发展而制定的()的谋划与方略。
学生学习了A×B=B×A后,得出3×5=5×3的结果,这属于()
王家村西瓜大丰收后,全村男女老少分四个组品尝西瓜且每组人数正好一样多,小伙子一人吃1个,姑娘两人吃1个,老人三人吃1个,小孩四人吃1个,一共吃了200个西瓜。问王家村品尝西瓜的共有()。
Theissuepriceofthecompany’sshares_______(对许多人来说太高了).
最新回复
(
0
)