首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include <iostream> using namespace std; class Base { public: Base(){} virtual void who()
有以下程序: #include <iostream> using namespace std; class Base { public: Base(){} virtual void who()
admin
2010-03-29
39
问题
有以下程序: #include <iostream> using namespace std; class Base { public: Base(){} virtual void who() { cout<<"Base Class"<<end1; } ~Base(){} }; class Derivel : public Base { public: void who() { cout<<"Derivel Class"<<end1; } }; class Derive2 : public Base { public: void who () { cout<<"Derive2 Class"<<end1; } }; int main () { Base *p; Derivel obj1; Derive2 obj2; p=&obj1; p=&obj2; p->who ( ); return 0; } 执行程序后的输出结果是( )。
选项
A、Base Class
B、Derivel Class
C、Derive2 Class
D、程序编译时出错
答案
4
解析
本题考核虚函数的应用。本题中,先定义了一个基类Base,它含有一个虚成员函数who(),随后定义的类Derivel和Derive2都是基类Base的公有派生类。在主函数中定义了一个指向Base类的指针,它也被允许指向其派生类。在执行过程中,不断改变它所指向的对象,p->who就能调用不同的函数实现。这是因为使用了虚函数,因而进行动态联编。 程序最后把指针p指向派生类Derive2的对象,由于函数who()在基类Base中是虚函数,所以系统调用Derive2中的who()函数,最后输出Derive2Class。
转载请注明原文地址:https://kaotiyun.com/show/8Xjp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
以下程序的输出结果是()。#includemain(){inta=0,b=0,c=0;c=(a一=++a),(a+=b,b+=4);printf(’’%d,%d,%d\n’’,a,b,c);}
有以下程序#includemain(){inta[3]={0},i,j,k=2;for(i=0;i
关于continue和break的叙述中正确的是()。
有以下程序#includeintfun(inta,intB){returna+b;}main(){intx=6,y=7,z=8,r;r=fun(fun(x,y),z--);printf("
已知二又树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是()。
在一棵二叉树上,第5层的结点数最多是()。
下列关于逻辑运算符两侧运算对象的叙述中正确的是()。
设一棵满二叉树共有15个结点,则在该满二叉树中的叶子结点数为()。
深度为7的二叉树共有127个节点,则下列说法中错误的是()。
随机试题
夹层锅是将高压蒸汽通入金属夹层中,使锅内快速受热升温来加热食物。一般操作较为方便,只要加压就能提高温度。()
适合用于检查斜视角的方法有
国家发展改革委员会发布的《节能中长期专项规划》要求,2010年新增主要耗能设备的能源效率要达到或接近()
账户是根据()设置的,具有一定的格式和结构,用于分类反映会计要素增减变动情况及其结果的载体。
()是设立代理记账机构的条件。
A上市公司2012年末,未分配利润0、盈余公积500万元、资本公积800万元(其中资本溢价500万元),经股东大会批准,A公司以5元每股现金回购本公司股票200万股并注销,下列会计处理正确的是()。[2013年11月真题]Ⅰ.库
转移风险分为财务型非保险转移和财务型保险转移两种方法。以下方法属于财务型非保险转移风险的有()。
本单位工作计划的归档时间一般在形成的()。
学生在班级中的活动主要是通过交往来展开的,活动的过程就是()
应试教育
最新回复
(
0
)