首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class Base { public: void fun1(){cout<<’’Base\n’’;} v
有如下程序: #include<iostream> using namespace std; class Base { public: void fun1(){cout<<’’Base\n’’;} v
admin
2020-04-07
37
问题
有如下程序:
#include<iostream>
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
解析
此题考查的是虚函数的概念。在C++语言中,一个派生类的对象可以被它的任何一个基类的指针所指向,若基类和派生类中存在一模一样的成员函数。那么通过该基类指针调用这样的成员函数时,若这个成员函数被定义成虚函数,那么就调用派生类中的;否则就调用基类中的。本题中,在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obj,所以在调用fun1()时,运行的是基类的版本,而fun2()运行的是派生类的版本。
转载请注明原文地址:https://kaotiyun.com/show/yk8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序#include<iostream.h>voidmain(){inta=5,b=0,c=0;if(a=b+c)cout<<"***"<<endl:elsecou
对于类定义classA{public:virtualvoidfunc1(){}voidfunc2(){}};ClassB:publicA{pu
执行以下程序后,输出“*”号的个数是__________。#includemain(){intij;for(i=1;i
若有整型变量x=2,则表达式x<<2的结果是【】。
对于模板定义关键字class和typename说法不正确的是
数据字典(DD)是定义以下哪种系统描述工具中的数据的工具()。
模板函数的真正代码是在()时候产生。
判断字符型变量ch是否为大写英文字母,应使用表达式______.
函数定义如下:voidfun(intx,int&y){x++;y++;}如果执行代码段:inta=0,b=1;fun(a,b);则变量a和b的值分别是()。
检查软件产品是否符合需求定义的过程称为()。
随机试题
什么是摄影艺术?
细菌生长繁殖的方式是
含有间隙腺毛的药材是
项目()是指承包企业及其项目经理部有关人员凭借历史数据和工程经验,运用一定方法对工程项目未来的成本水平及其可能的发展趋势做出科学估计。
采用预收款方式销售商品的,确认该商品销售收入的时点是()。
所谓办事公道,意思是()。
分权是指现代企业组织为发挥低层组织的主动性和创造性,而把生产管理决策权分给下属组织,最高领导层只集中少数关系全局利益和重大问题的决策权。授权则是指主管将职权或职责授给某位部属负担,并责令其负责管理性或事务性工作。根据上述定义,下列选项属于授权的一项是:
Globalizationcansomehowbedefined【C1】______harmonization,homogenizationorintegrationofthecountriesand【C2】______.Funct
ManofFewWordsEveryonechasessuccess,butnotallofUSwanttobefamous.SouthAfricanwriterJohnMaxwellCoetzee
A.supplementedB.directC.expectationD.latterE.predominantlyF.outbreakG.la
最新回复
(
0
)