首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序#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
101
问题
有如下程序#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全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>voidmain(){intn=2,k=1;while(!(k>0||n++));printf(’’%d%d\n’’,k,n);}程序运行
下列程序的运行结果是()。#inc1udevoidfun(int*s,int*p){staticintt=3;*p=s[t];t一一:}voidmain(){
若有定义语句:intx=l;则表达式x一=x+2的值为()。
软件设计中模块划分应遵循的准则是()。
下列二叉树描述中,正确的是()。
以下说法正确的是()。
关于C语言程序设计,以下叙述中不正确的是()。
函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。例如,若s所指字符串中的内容为”ABCDEFG12345”,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须
数据字典(DD)所定义的对象都包含于
面向对象方法中,继承是指()。
随机试题
下列行为属于《反不正当竞争法》所规范的政府及其所属部门滥用行政权力限制竞争的行为有()。
为了耕种自己的土地,需要经过他人土地而取得通行权,这一权利从用益物权的角度讲,叫做()。A.典权B.地上权C.地役权D.使用权
下列关于真核生物复制特点的叙述,错误的是
市场细分是20世纪50年代中期由美国市场营销学家温德尔·斯密首先提出来的一个概念。()
初次面谈中了解客户的贷款需求状况不包括()
胃、十二指肠溃疡急性大出血的主要表现为()。
试简述3~6岁幼儿无意记忆占优势的表现。
在我国城市社区建设的发展历程中,各地积极探索,形成了各具特色的社区管理模式。其中,以公众参与为突出特点的代表是()。
在某国,每年有比例为p的农村居民移居城镇,有比例为q的城镇居民移居农村。假设该国总人口数不变,且上述人口迁移的规律也不变。把n年后农村人口和城镇人口占总人口的比例依次记为xn和yn(xn+yn=1)。求关系式中的矩阵A;
HowdidthewomanknowabouttheStudentActionUnion?
最新回复
(
0
)