首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void fun1(){cout
有如下程序: #include using namespace std; class Base { public: void fun1(){cout
admin
2018-08-13
57
问题
有如下程序:
#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<<"Dedved\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
解析
此题考查的是虚函数的概念。在C++语言中,一个派生类的对象可以被它的任何一个基类的指针所指向,若基类和派生类中存在一模一样的成员函数。那么通过该基类指针调用这样的成员函数时,若这个成员函数被定义成虚函数,那么就调用派生类中的:否则就调用基类中的。本题中,在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obj,所以在调用fun1()时,运行的是基类的版本,而fun2()运行的是派生类的版本。
转载请注明原文地址:https://www.kaotiyun.com/show/GyAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于C++函数的叙述中,正确的是()。
已知:doubleA(doubleA){return++a;}和intA(inA){return++a;}是一个函数模板的两个实例,则该函数模板定义为【】
在下面横线上填上适当的语句,完成程序。#include<iostream>usingnamespacestd;classBase{intx;public:Base(inti
在程序设计阶段应该采取______和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。
结构化程序设计的3种基本结构分别是顺序、选择和______。
结构化程序设计的三种基本结构分别是顺序、选择和______。
下列程序完成从文件读取文件显示的同时写入第二个文件,则在程序中划线部分应该出现的语句是______。#include<iostream.h>#include(fstream.h)voidmain(){fstreamfi
在关系数据库中,用来表示实体之间联系的是______。
C++语言中的多态性是在编译时通过______和模板体现的,在运行时是通过______体现的。
随机试题
心功能Ⅰ级心功能Ⅱ级
设有以下语句:typedefstructTT{eharc;inta[4];}CIN;则下面叙述中正确的是()。
审核输血申请单必须包括
三种元素均属于微量元素的是
脊髓型颈椎病最重要的诊断依据为
赵某,男,32岁,一日到商场购物,见首饰柜台的售货员正在为顾客试首饰,当着顾客的面,从柜台中拿出一串项链(价值3500元),狂奔出门坐出租车逃走,售货员报警后将其抓获。赵某构成何罪?( )
隧道衬砌裂损设计方面的原因主要包括()。
黄河公司是一家制造企业,因生产需要,计划添置条生产线,需要购置一套需要安装的生产设备,并经专业人员安装之后才能投入使用。相关业务如下:(1)2012年9月30日,为购建该生产设备向建设银行专门借入资金100万元,并存入银行。该借款期限为2年,年利率10%
7个人P、Q、R、S、T、U和V自始至终参加一项游泳比赛,没有任何两人同时游到终点。并且已知以下条件:(1)V总是游在P之前。(2)P总是游在Q之前。(3)或R第一名,T最后一名;或S第一名,U或Q最后一名。在这次比赛中,如果V是第五名,下列哪一
A.changeanarrangementB.givefeedbackC.askforacheckD.establishbusinessrelationsE.expressappreciation
最新回复
(
0
)