首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class Base { public: void funl(){cout<<"Basea";} v
有如下程序: #include<iostream> using namespace std; class Base { public: void funl(){cout<<"Basea";} v
admin
2017-10-17
52
问题
有如下程序: #include<iostream> using namespace std; class Base { public: void funl(){cout<<"Basea";} virtual void fun2(){tout<<"Base\n";} }; class Derived:public Base { public: void funl() {cout<<"Derived\n"; } void fun2() {cout<<"Derived\n"; } }; void f(Base& b) {b.funl(); b.fun2(); } int main() { Derived obj; f(obj); return 0; } 执行这个程序的输出结果是
选项
A、Base Base
B、Base Derived
C、Derived Base
D、Derived Derived
答案
B
解析
本题考查的是虚函数的概念。在C++中,一个派生类的对象可以被它的任何一个基类的指针所指向(或被基类类型的引用所引用)。若基类和派生类中存在一模一样的成员函数,那么通过该基类指针(或引用)调用这样的成员函数,究竟是应该调用基类中的还是调用派生类中的呢?答案是:若这个成员函数被定义成虚函数,那么就调用派生类中的;否则会调用基类中的。本题是一个典型的例子,funl()是一般成员函数,fun2()是虚函数,而且在派生类与基类中都存在两个这样的函数。在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obi。所以在调用fun()时,运行的是基类的版本,而fun2()运行的是派生类的版本。故选项 B中的结果是正确的。
转载请注明原文地址:https://www.kaotiyun.com/show/KWAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出: main( ) {int n, k, float score, sum, ave;
下列叙述中正确的是
下列叙述中,不属于测试的特征的是()
在结构化设计方法中,生成的结构图(SC)中,带有箭头的连线表示()
以下程序的执行结果为()。#include<iostream.h>Classsample{intn;public:sample(inti){n=i;}operato
不能作为函数重载的判断依据的是()。
在析构函数中调用虚函数时,采用_____联编。
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是
下列选项中合法的用户标识符是( )。
常用的软件结构设计工具是结构图(SC),也称程序结构图。其中,用矩形表示______,用带空心圆的箭头表示传递的是数据。
随机试题
TheunitofAmeasurementknownasfootBhasoriginallybasedontheaverageCsizeofthehumanDfoot.
地方性法规可以设定()的行政处罚。
“泪”不应写成“涙”,“涙”是被淘汰的_____字。
Testing:IsittheOnlyWaytoEvaluateStudents?Abouttenpercentof【C1】______(spend)onprimaryandsecondaryeducation
关于亚急性甲状腺炎,哪一项是错误的
环境因素对机械设备安装精度的影响不容忽视。下列环境因素中,不属于影响机械设备安装精度的主要因素是()。
要使原稿(左图)发生柔和自然的变形,以得到右图所示的效果,应该采用的变形方式为()。
在我国的戏剧工作者中,只有很小的比例在全国30多个艺术家协会中任职。这说明,在我国的艺术家协会中,戏剧艺术方面缺少应有的代表性。以下哪项是对上述论证最为恰当的评价?
关于法律部门与相关概念的关系,下列各说法错误的是
工厂生产中所需的零件可以存放在多个仓库中,而每一仓库中可存放多种零件。则实体仓库和零件间的联系是
最新回复
(
0
)