首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #include<iostream> using namespace std; class Base{ public: void output(){cout<<1;} virtual void Print(){cout<<’B’;} }; c
有如下程序; #include<iostream> using namespace std; class Base{ public: void output(){cout<<1;} virtual void Print(){cout<<’B’;} }; c
admin
2015-11-24
63
问题
有如下程序;
#include<iostream>
using namespace std;
class Base{
public:
void output(){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
解析
此题考查的是虚函数与多态性。在成员函数的声明前面加上virual关键字,即可把函数声明为虚函数:在C++中,一个基类指针可以用于指向它的派生类对象,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本。本题中,从基类的定义可以看出:output()函数是普通成员函数,而Print()函数是虚函数。所以,通过ptr指针调用的output()是基类中的output(),而通过它调用的Print()则是派生类中的Print( )。
转载请注明原文地址:https://www.kaotiyun.com/show/tlNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
考虑函数原型voidtest(inta,intb=7,charz=’*’下面的函数调用中,属于不合法调用的是
程序设计方法要求在程序设计过程中
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为【】的。
以下程序的执行结果为【】。 #include<iostream> usingnamespacestd; classbase { public: virtualvoidwho() { cout<<
下列关于动态联编的描述中,错误的是()。
()是一个在百慕大类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本。
下列引用的定义中,()是错误的。
下列关于多态性的描述,错误的是
可以通过下面哪些函数实现类的多态性( )。
随机试题
肾气丸中配用“六味地黄丸”的主要意义在于
京万红软膏的主治不包括()
胸膜腔闭式引流的引流管脱出时应首先
ISO和FIDIC都推荐采用国际上通用的PDCA循环方法,其中包括()。
20××年7月15日,某亚麻厂正在生产的梳麻车间、前纺车间和准备车间的联合厂房突然发生亚麻粉尘爆炸起火。一瞬间,停电停水,当班的477名职工大部分被围困在火海之中。经及时抢救,多数职工脱离了危险区。该厂的除尘系统采用布袋除尘,金属管道输送亚麻粉尘。事故导
退伙是指合伙企业存续期间,合伙人因特定情形发生而退出合伙企业,失去合伙人资格的法律事实或法律行为。实践中,退伙的情形不包括()。
被审计单位2013年12月31日的银行存款余额调节表包括一笔“企业已付、银行未付”调节项,其内容为以支票支付赊购材料款。下列审计程序中,能为该调节项提供审计证据的有()。
下列诗词有异曲同工之妙的是:①但愿人长久,千里共婵娟②海内存知己,天涯若比邻③海上生明月,天涯共此时④唯应待明月,千里与君同
Usingtoolsdoesn’tmakehumans,dolphins,andcrowssmart.Rather,it’sthestressandchallengeoflivingwithothers—recogniz
Therearestockmarketsinlargecitiesinmanycountries.StockmarketsinParis,London,Tokyo,ShanghaiandNewYorkareamon
最新回复
(
0
)