首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #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
37
问题
有如下程序;
#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://kaotiyun.com/show/tlNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的选项是#include<iostream.h>voidmain(){inta,b,t;
对于下面的程序ifstreamfin(c:\test.txt);if(fin)cout<<"ok";elsecout<<"wrong";对于if语句中的内容可
以下程序的输出结果是【】。#include<iostream>usingnamespacestd;voidfun(){staticinta=0;a+=2;cout<<a
下列对模板的声明中,正确的是
若有说明:int[3][4]={0};则下面叙述正确的()。
t为int类型,进入下面的循环之前,t的值为0。while(t=1){...}则以下叙述中,正确的是()。
下列运算符中,()运算符不能在C++中重载。
在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是
从实现的角度划分,c++所支持的两种多态性分别是【】时的多态性和运行时的多态性。
静态联编所支持的多态性称为______多态性,动态联编所支持的多态性则称为_______多态性,动态多态性由_____来支持。
随机试题
SQL由四部分组成:
外耳道炎耳郭假性囊肿
A.骨盆骨折B.肱骨髁上骨折C.股骨颈骨折D.锁骨骨折E.Colles骨折易发生缺血性坏死的骨折
甲公司2017年度发生的有关交易或事项如下:(1)2017年1月1日甲公司从其母公司处购入乙公司90%的股权,实际支付价款6000万元。合并日,乙公司相对于最终控制方而言的账面价值为7000万元,可辨认净资产的公允价值为8000万元。甲公司取得乙公司90
下列金融工具中,属于长期金融工具的有()。
与儿童自我意识的真正出现相联系的是()。
被辞退的公安民警享有法定待遇,即可享受()。
已知y=x2sin2x,求y(50).
Oneofthebasiccharacteristicsofcapitalismistheprivateownershipofthemajormeansofproduction—capital.Theownership
Workingfromhomeisflexibleandbeneficialnotonlytotheemployeesbutalsotothe(employ)______.
最新回复
(
0
)