首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序#include <iostream>using namespace std;class base{public: virtual void f1() { cout<<"F1Base "; } virtual
有如下程序#include <iostream>using namespace std;class base{public: virtual void f1() { cout<<"F1Base "; } virtual
admin
2010-12-16
121
问题
有如下程序#include <iostream>using namespace std;class base{public: virtual void f1() { cout<<"F1Base "; } virtual void f2() { cout<<"F2Base "; }};class derive: public base{ void f1() { cout<<"F1Derive "; } void f2( int x ) { cout<<"F2Derive "; }};int main(){ base obj1, * p; derive obj2; p = & obj2; p -> f1(); p -> f2(); return 0;} 执行后的输出结果是
选项
A、F1Derive F2Base
B、F1Derive F2Derive
C、F1Base F2Base
D、F1Base F2Derive
答案
A
解析
本题主要考查C++中虚函数机制及其继承过程中的要点。虚函数在基类中加关键字virtual声明,在派生类中重新定义;如果派生类没有覆盖虚函数,则程序执行中将会执行基类的虚函数版本。题目程序中,建立了基类base,其内函数void f1()和void f2()均被声明为虚函数,并在调用时会显式的发出声明。派生类derive利用 public方式继承基类base,并覆盖其基类base中的虚函数f1();对于base中的虚函数f2(),由于派生类 derive中的同名函数f2()中带有参数int x,因此被编译器认为是函数重载,而不作虚函数覆盖处理,因此实际上派生类derive中包含两个f2()函数,一个不带参数,调用时执行基类base中的f2()函数版本,一个带参数int x,调用时执行重载后的版本。题目 main()函数中,定义了基类对象。obj 1和基类指针*p,同时定义了派生类对象obj2。p指向。obj2时:p->f1()函数调用执行派生类覆盖后的版本,输出D1;p-> f2()由于不带参数,因此执行未经派生类覆盖的函数版本,即基类base中的f1()函数版本。
转载请注明原文地址:https://kaotiyun.com/show/N1Vp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已知下列函数定义:fun(int*b,intc,intd){intk;for(k=0;k
设有如下定义:structsk{intm;floatx;}data,*q;若要使q指向data中的m域,正确的赋值语句是()。
深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为()。
软件生命周期中的活动不包括()。
结构化程序设计的基本原则不包括()。
下列关于线性链表的叙述中,正确的是()。
若下列选项中的各变量均为整型且已有值,其中不正确的赋值语句是()。
函数调用语句:fun((exp1,exp2),(exp1,exp2,exp3));含有的实参个数是
给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。例如,输入的数为:551234,输出结果应当是:a=55.0,b=34。0,c=12.0。请改正程序中的错误,使
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
随机试题
适宜在全国范围内招募的人员是()
缺碘可引起哪一内分泌腺体肿大
男性,69岁,糖尿病伴冠心病,饮食控制,优降糖5mg,一日三次,治疗较满意.近日胃纳稍减,半夜呼之不醒,次晨发现呼吸急促,神经系统无病理反射,心电图正常。最可能的诊断是()。
富豪黄某欲人股国安电器公司,但不愿自己出面,于是和朋友李某签署一份委托持股协议,约定由黄某出资5亿元,以李某的名义人股,股权归属黄某。其后,黄某与李某就股权归属发生争执。下列说法正确的是:()
购房投资者通过折价方式将其房屋转换为现金而导致资金损失风险,属于()。
以下属于基金管理公司制定内部控制制度原则的是()。Ⅰ.全面性原则Ⅱ.合法、合规性原则Ⅲ.审慎性原则Ⅳ.成本效益原则
注册会计师对期初余额进行审计,主要是为了证实期初余额不存在对本期会计报表有重大影响的错报或漏报。 ( )
蛋白质
一般资料:求助者,男性,16岁,高中一年级学生。案例介绍:求助者从小有咬指甲的习惯,多次受到父母的训斥。自己也很想改,但做了很多努力,没有明显效果,主动前来寻求帮助。下面是心理咨询师与该求助者之间的一段咨询对话:心理咨询师:通
[2013年]设随机变量X服从标准正态分布N(0,1),则E(Xe2x)=_________.
最新回复
(
0
)