首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序#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
112
问题
有如下程序#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全国计算机二级
相关试题推荐
在软件生产过程中,需求信息的来源是()。
有以下程序:#includestruetord{intx,y;}dt[2]={1,2,3,4};main(){struetord*p=dt;printf("%d",++p->x);
有以下程序:#includemain(){inti=1;i=i^i;printf("%d\n”,i);}程序运行后的输出结果是()。
下列叙述中正确的是()。
uniondt{inta;charb;doublec;}data;以下叙述中错误的是
请编写函数fun,它的功能是计算下列级数和,和值由函数值返回。例如,当n=10,x=0.3时,函数值为1.349859。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句
设有定义:intx[2][3];则以下关于二维数组x的叙述错误的是
对关系S和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为()。
软件详细设计产生的图如下:该图是()。
若有以下定义(设int类型变量占2个字节)inti=8,j=9;则以下语句:printf("i=%%d,j=%%%d\n",i,j);输出的结果是()。
随机试题
—CouldIleavethebookhere?—Iwouldratheryou______thebookwithyou.
不符合幼儿期特点的是
[1999年第029题]关于大型公共建筑设计的论述,下列哪条不妥?
粉尘是指能较长时间悬浮于空气中的固体微粒,直径大多数为()m。
货币贬值对一国的进出口有着重要的影响,下面说法中正确的是()。
某公司老板在得知员工小李有犯罪前科后欲将他开除,社会工作者小希得知情况后,将小李在接受社区矫正过程中的良好表现告知公司老板,希望老板能给予小李一视同仁、公平竞争的机会。小希的做法保障了小李的()权益。
图20是闭合开关s后小磁针静止在螺线管旁的情况,请标出通电螺线管的N极和小磁针的N极。
社会生产中最活跃最革命的因素是生产劳动者。()
以下关于项目评估的叙述中,(85)是正确的。
Whenaconsumerfindsthatanitemsheorheboughtisfaultyordoesnotliveuptothemanufacturer’s【B1】______forit,thefir
最新回复
(
0
)