首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #include using namespace std; class Base{ public: void output(){cout
有如下程序; #include using namespace std; class Base{ public: void output(){cout
admin
2018-08-13
25
问题
有如下程序;
#include
using namespace std;
class Base{
public:
void output(){cout<<1;}
virtual void Print(){tout<<’n’B;}
};
class Derived:public Base{
public:
void output(){cout<<2;}
void Print0{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/LyAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;classAA{intn;public:AA(intk):n(k){}
函数swap(arr,n)可完成对arr数组从第1个元素到第n个元素两两交换。在运行调用函数中的语句后,a[0]和a[1]的值分别为【】。a[0]=1;a[1]=2;swap(a,2);
在面向对象的程序设计中,用来请求对象执行某一处理或回答某些信息的要求称为【】。
数据流图的类型有______和事务型。
下列程序中的重载函数disp()发生错误,错误原因是______。#include<iostream.h>classSample{private:intm;staticintst;
数据流图采用4种符号表示______、数据源点和终点、数据流向和数据加工。
下列符号中,正确的C++标识符是()。
定义静态成员函数的主要目的是
下列字符串中可以用作C++标识符的是
在E-R图中,用来表示实体联系的图形是
随机试题
甲状腺大部切除术治疗甲亢的手术指征不包括
A.平肝潜阳,制酸止痛B.平抑肝阳,柔肝止痛C.疏肝理气,调经止痛D.理气和胃,祛寒止痛E.疏肝下气,散寒止痛吴茱萸的功效有
广告策划包括()。
关于投资乘数原理和加速数原理,下列说法中正确的是()。
决定建设工程价值和使用价值的主要阶段是()。
在起重工程中,以不均衡载荷系数计人其影响。一般取不均衡载荷系数k2为()。
外国人为前往我国不对外国人开放地区旅行所办理的旅行证的有效期最长为()。
A、 B、 C、 D、 C
Hisparentsdiedwhenhewasyoung,sohewas______upbyhisgrandma.
Australia,officiallytheCommonwealthofAustralia,isacountryinthesouthernhemisphere.Itcomprisesthemainlandofthew
最新回复
(
0
)