首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #include using namespace std; class Base{ public: void output(){cout
有如下程序; #include using namespace std; class Base{ public: void output(){cout
admin
2018-08-13
50
问题
有如下程序;
#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://www.kaotiyun.com/show/LyAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员数的声明语句为()。
类time可以输出12小时或24小时制的时间,现需要设计一个缺省构造函数,缺省值为0时0分0秒。该缺省构造函数为______。#include<iostream.h>classTime{inth,m,s;
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为
三种基本结构中,能简化大量程序代码行的是()。
下列关于结构化程序设计原则和方法的描述中,错误的是()。
下列关于模板的说法正确的是
C++语言中标点符号中表示一条预处理命令开始的是
下列字符串中可以用作C++标识符的是
在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序:#include<iostream>usingnamespaees
随机试题
试述一战期间中国资本主义的发展状况,并分析其原因和历史特点。(武汉大学2004年中华民国史真题)
某羊群发病,部分成年羊腕关节肿大,跛行;羔羊初跛行,惊恐不安,眼球震,进而四肢强直、共济失调,有的角弓反张、头颈歪斜。该病最可能的诊断是()
A.推动作用B.营养作用C.气化作用D.防御作用E.固摄作用卫气的主要功能是()
下列关于施工企业项目经理工作性质的说明,正确的是()。
有关进口设备抵岸价构成正确的是()。
下列情形中,应按火灾危险性较小部分确定的是()。
(2016年浙江工商大学)请描述SML线,并说明当通货膨胀率,风险回避程度分别上升或下降时,SML线会发生什么变化?
软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。
有以下程序:#includetypedefstruetstu{charname[10];chargender;intscpre;}STU;voidf(STUa,STU*b,
A、Tohelpbankstokeepmoremoney.B、Toputmoremoneyintotheeconomy.C、Tomakelessdepositorswithdrawmoney.D、Toreduce
最新回复
(
0
)