首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
admin
2021-05-06
38
问题
有如下程序:
#include
using namespace std;
class Base
{
public:
void fun1() { cout<<"Base\n"; }
virtual void fun2() { cout<<"Base\n"; }
};
class Derived : public Base {
public:
void fun1() { cout<<"Derived\n"; }
void fun2() { cout<<"Derived\n"; }
};
void f(Base& b) { b.fun1(); b.fun2(); }
int main()
{
Derived obj;
f(obj);
return 0;
}
执行这个程序的输出结果是( )。
选项
A、Base
Base
B、Base
Derived
C、Derived
Base
D、Derived
Derived
答案
B
解析
在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数,本题中定义了一个派生类对象obj,执行f函数后,将派生类对象obj转化为基类对象,由于fun1不是虚函数,所以输出基类的fun1;而fun2是虚函数,所以输出派生类的fun2,所以本题答案为B。
转载请注明原文地址:https://kaotiyun.com/show/ORfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classMyClass{intx;public:MyClass0:x(0),y(0){}intGetX(){returiax;}voidSetX(intxx){x=xx
下列函数模版中的定义中,合法的是()。
有如下程序:#include#includeusingnamespacestd;intmain(){cout.fill(‘*’);cout
在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用()。
有如下程序:#includeusingnamespacestd;classBase{public:virtualvoidShow(){tout
有类定义如下:classType{public:Type(inti=0);Typeoperator一(int);friendTypeoperator+(Type,Type);privat
下列关于栈的叙述正确的是()。
静态数据成员是为()的数据。
下列哪项不是面向对象程序设计的主要特征()。
在下列模式中,能够给出数据库物理存储结构与物理存取方法的是()。
随机试题
用正规胰岛素治疗时,全日的剂量分配成哪几种方案进行
招投标阶段,混凝土工程施工中需单独计量计列的费用是().
下列哪项不属于精神分裂症阴性症状【】
原核生物翻译过程中,促进核蛋白体大、小亚基分离的物质是
A.DnaA蛋白B.DnaG蛋白C.DnaC蛋白D.SSB复制起始时能辨认并结合于起始位点上的蛋白为
1.女性,50岁,间断呕吐、腹泻2年,双下肢浮肿2个月来诊。曾就诊发现胸腔积液、贫血。2个月前尿中泡沫增多。查体:BP135/80mmHg,头发稀疏,双下肢重度浮肿。WBC1.9×109/L,Hb77g/L,PLT180×109/L。哪种检查
我国规定1岁内必须完成的计划免疫是
女,37岁。近1周感腰痛,伴有尿频、尿急等不适。查体:BPl60/100mmHg,尿蛋白(+),沉渣红细胞8~10/HP,白细胞15~20/HP,肾盂造影示右肾缩小,肾盏扩张,可能的诊断是
建筑物耐用年限短于土地使用权年限时,应按建筑物()计算成新率。
Forlaymenethnologyisprobablythemostinterestingofthebiologicalsciencesfortheveryreasonthatitconcernsanimalsin
最新回复
(
0
)