首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include<iostream> using nameSpace std; class base { public: vinual void f1() { cout<<"F1 Ba
有如下程序 #include<iostream> using nameSpace std; class base { public: vinual void f1() { cout<<"F1 Ba
admin
2009-02-15
73
问题
有如下程序 #include<iostream> using nameSpace std; class base { public: vinual void f1() { cout<<"F1 Base"; } 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
答案
1
解析
本题主要考查C++中虚函数机制及其继承过程中的要点。虚函数在基类中加关键字virtual声明,在派生类中重新定义;如果派生类没有覆盖虚函数,则程序执行中将会执行基类的虚函数版本。题目程序中,建立了基类base,其内函数void f1()和 voidf2()均被声明为虚函数,并在调用时会显式的发出声明。派生类derive利用public方式继承基类base,并覆盖其基类base中的虚函数f1();对于base中的虚函数f2(),由于派生类derive中的同名函数f2()中带有参数int x,因此被编译器认为是函数重载,而不作虚函数覆盖处理,因此实际上派生类derive中包含两个f2()函数,一个不带参数,调用时执行基类base中的f2()函数版本,一个带参数int x,调用时执行重载后的版本。题目main()函数中,定义了基类对象。obj1和基类指针*p,同时定义了派生类对象。obj2。p指向。obj2时:p—>f1()函数调用执行派生类覆盖后的版本,输出D1:p-> f2()由于不带参数,因此执行未经派生类覆盖的函数版本,即基类base中的f1()函数版本。
转载请注明原文地址:https://www.kaotiyun.com/show/W7kp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下语句:k=a>b?(b>c?1:0):0;,以下程序段中,与上述语句功能相同的是()。
以下叙述中错误的是
若有定义:charc;intd;,程序运行时输入:c=1d=2<回车>,能把字符1输入给变量c、把整数2输入给变量d的输入语句是()。
在数据库设计中,将E-R图转换成关系数据模型的过程属于()。
以下叙述错误的是()。
以下选项中,当x为大于1的奇数时,值为0的表达式是
下列给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返同,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长小于N。请在程序的下画线处填入正确的内容并将下画线删除,使程序得出
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是
下列方法中,属于白盒法设计测试用例的方法的是()。
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件nodi1.C。此程序建立了—个带头结点的单向链表,并用随机函数为各结点赋值。函数fun的功能是将单向链表结点(不包括头结点)数据域为偶数的值累加起来,并且作为
随机试题
中共八大提出,社会主义改造基本完成后,全国人民的主要任务是集中力量发展社会生产力,实现国家工业化,逐步满足人民日益增长的物质和文化需要。()
作为产品的一种外在形式,基础产品通常变现为()
下列中,既可用作血象检验时的血样抗凝,又可作为血液保养液的抗凝剂是()。
老年人呼吸系统的明显生理改变是
本质安全中的()动能是指当设备、设施发生故障或损坏时,仍能暂时维持正常工作或自动转变为安全状态。
对于需要试生产的建设工程项目,建设单位应当在项目投入试生产之日起( )内向环保行政主管部门申请对其项目配套的环保设施进行竣工验收。
现时价值评估和承保风险评估是保险公估人所涉足的重要业务领域,二者( )。
会计师事务所应当根据会计师事务所业务质量控制准则,制定质量控制制度,以合理保证业务质量。质量控制制度的目标有()。
WorkisaveryimportantpartoflifeintheUnitedStates.WhentheearlyProtestant【1】cametothiscountry,theybroughtthe【2
AccordingtoEllen,theincreasingdemandforhiringisdueto
最新回复
(
0
)