首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #include using namespace std; class Base{ public: void output0{cout
有如下程序; #include using namespace std; class Base{ public: void output0{cout
admin
2015-09-14
57
问题
有如下程序;
#include
using namespace std;
class Base{
public:
void output0{cout<<1;}
virtual void Print(){cout<<’B’;}
};
class Derived:public Base{
public:
void output(){cout<<2;}
void Print(){cout<<’D’;}
};
int main(){
Base
*
ptr=new Derived;
ptr->output();
ptr->Print();
delete ptr;
return 0
}
程序的输出结果是( )。
选项
A、1B
B、1D
C、2B
D、2D
答案
B
解析
此题考查的是虚函数与多态性。在成员函数的声明前面加上vimal关键字,即可把函数声明为虚函数;在C++中,一个基类指针可以用于指向它的派生类对象,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本。本题中,从基类的定义可以看出:output()函数是普通成员函数,而Print()函数是虚函数。所以,通过ptr指针调用的output()是基类中的output(),而通过它调用的Pfint()则是派生类中的Print()。
转载请注明原文地址:https://kaotiyun.com/show/jqNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序将x、y和z按从小到大的顺序排列,请将下面的函数模板补充完整。template<classT>voidorder(【】){Ta;if(x>y){
假定A为一个类,则语句A(A&a);为该类【】函数的原型说明。
在下面程序的横线处填上适当的语句,使该程序的输出为12。#include<iostream>usingnamespacestd;classBase{public:int
表达式c3=c1.operator+(c2)或c3=operator+(c1,c2)还可以表示为【】。
以下不正确的定义语句是
下列虚基类的声明中正确的是
下面的描述中,正确的是();
对于常数据成员,下面描述正确的是( )。
数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展过程。分布式数据库、面向对象数据库等新型数据库是属于()。
打开文件时可单独或组合使用下列文件打开模式:①ios②ios_base::aopiosase::binary③iosbase::④iosbase::out若要以二进制读方式打开一个文件,需使用的文件打开模式为()。
随机试题
Peoplewhousuallychowdownonchillipeppersmayliveforlongerandhaveasignificantlyreducedriskofdyingfromcardiovas
1789年美国联邦政府成立之初下设的部有()
癌前病变:
某患者因右侧舌下腺囊肿接受右舌下腺及囊肿摘除术后出现右颌下区胀痛,进食时症状加重,最可能的原因是
甘草中甘草甜素含量最高的时期为
图示三铰拱y=4f/l2(l-x),l=16m,D右侧截面的弯矩值为()。
利率互换采用()的方式。
2008年一季度企业景气指数最高的行业是()。2008年一季度企业家信心指数比上季度上升最少的行业是()。
A、 B、 C、 D、 B
【S1】【S3】
最新回复
(
0
)