首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序; #include <iostream> using namespace std
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序; #include <iostream> using namespace std
admin
2017-10-17
34
问题
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序; #include <iostream> using namespace std; class Base { public: virtual void f() {cout<<"f0+";} void g() {cout<<"g0+";} }; class Derived: public Base { public: void f() {cout<<"f+";} void g() {cout<<"g+";} }; int main() { Derived d; Base *p=&d; P->f(); P->g(); return 0; }运行时输出的结果是
选项
A、f+g+
B、f0+g+
C、f+g0+
D、f0+g0+
答案
C
解析
本题考查的知识点是:虚函数与多态性。在题目的主函数中,首先声明了一个派生类对象d,然后声明了一个基类指针p指向它。接着通过该基类指针,分别调用了f()函数和g()函数。由于在基类Base的定义中,f()函数使用了virtual关键字,因此它是虚函数,即具有多态性,所以通过指针p调用的f()是派生类Derived中定义的 f()。而g()不是虚函数,所以通过指针p调用的是Base中定义的g()。由此可见,最终输出的结果是“f+g0+”。故本题应该选择C。
转载请注明原文地址:https://kaotiyun.com/show/cPAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的运行结果是______。#include<iostream.h>#include<math.h>template<classT>classTAdd//定义类模板TAdd,T为类型{Tx,y;
在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为______。
在析构函数中调用虚函数时,采用_____联编。
友元运算符。obj1>obj2被C++编译器解释为()。
()是一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本。
设有如下关系表:则下列操作中正确的是
下面的函数模板定义中错误的是
下列程序将x、y和z按从小到大的顺序排列,请将下面的函数模板补充完整。template<classT>voidfun(______){Ta;if(x>y)
重新定义标识符的作用域规定是外层变量被隐藏,______变量是可见的。
随机试题
企业往往通过_______等指标来评估营销成果。
WhatarethebeautiesofHawaii?Let’sstartwithfour.Thebeach,famousforitswatertemperature,airtemperatureandwav
是去是留该由你决定。
急性感染多神经根炎典型脑脊液改变为细胞—蛋白分离。()
关于促胰液素的生理作用,下列哪项错误
患者,女,32岁。每于经期下腹部灼痛拒按,经量多,色黯有血块,平素带下量多,黄稠有异味,舌红,苔黄腻,脉滑数。该患者辨证为
王某涉嫌强奸一案经由公安机关侦查终结,移送检察院起诉,人民检察院经审查决定不起诉,下列各项处理中错误的是______。
谢某在一次与朋友聚餐时与邻桌的林某发生争执,并用茶壶将林某打伤,林某经鉴定为左眼失明,属重伤。公安机关依法对此立案侦查,该案最终起诉到法院。请回答以下问题:侦查过程中,谢某提出参与该案侦查的侦查人员武某是被害人林某的舅舅,要求其回避,应当如何处理?(
某公司预期股权收益率为15%,如果它的红利支付率为30%,那么,其红利增长率为()
()接受货主的委托,代表货主办理有关货物报关、交接、仓储、调拨、检验、包装、转运、订舱等业务的人。
最新回复
(
0
)