首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include #include using namespace std; class Instrument{ public: Instrument
有如下程序: #include #include using namespace std; class Instrument{ public: Instrument
admin
2019-07-10
20
问题
有如下程序:
#include
#include
using namespace std;
class Instrument{
public:
Instrument(string t="乐器",string n="无名"):type(t),name(n) { }
string GetType() const { return "乐器"; }
virtual string GetName() const { return "无名"; }
protected:
string type,name;
};
class Piano:public Instrument{
public:
Piano(string n,string t="钢琴"):Instrument(t,n) { }
string GetType() const { return "钢琴"; }
string GetName() const { return name; }
};
int main(){
Instrument *pi=new Piano("星空");
cout<
GetType()<<’-’<
GetName();
delete pi;
return 0;
}
运行时的输出结果是
选项
A、乐器-星空
B、乐器-无名
C、钢琴-星空
D、钢琴-无名
答案
A
解析
本题考查虚函数的运用,本题中基类Instrument,派生类Piano,其中虚函数为GetName,当定义Instrument *pi=new Piano("星空")时,调用派生类的GetType函数,得到type为乐器,name为星空,所以输出乐器-星空。选项A正确。
转载请注明原文地址:https://kaotiyun.com/show/lW8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
请将下列程序的横线处补充完整,使得输出结果为bbaa#include<iostream>usingnamespacestd;classA{public:______{cout<<"aa
若有以下定义:chara:intb;floatc;doubled;则表达式a*b+dc的值的类型为______。
在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为【】。
派生类构造函数的执行顺序是先执行【】的构造函数,然后执行成员对象的构造函数,最后执行【】的构造函数。
下列关于虚函数与函数重载区别的叙述中不正确的是()。
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列叙述中错误的是()。
类ostream的成员函数【】用于执行无格式输出,成员函数put用于输出单个字符。
下列有关内联函数的叙述中,正确的是()。
数据库设计分为需求分析阶段、______阶段、逻辑设计阶段、物理设计阶段、数据库实施阶段、数据库运行和维护阶段。
随机试题
在一间酒吧里有3个音乐爱好者队列,第1队的音乐爱好者只有随身听,第2队只有音乐磁带,第3队只有电池。而要听音乐就必须随身听、音乐磁带和电池这3种物品俱全。酒吧老板一次出售这3种物品中的任意两种。当一名音乐爱好者得到这3种物品并听完一首乐曲后,酒吧老板才能再
心肌传导细胞4期自动去极是由于()
七情刺激,易导致心气涣散的是
[2010年第116题]关于粮食仓库耐火等级的确定,下列不符合《建筑设计防火规范》规定的是:
采用数据电文形式订立合同,收件人未指定特定系统的,数据电文进入收件人的任何系统的首次时间,视为要约或者承诺到达时间。()(20D3年试题)
体积为9π立方厘米和27π立方厘米的两个实心金属球熔成一个新的实心金属球,问新的金属球表面积是多少?
以下关于我国的立法体制,说法不正确的是()
若256KB的SRAM具有8条数据线,则它具有( )条地址线。
已知IP=1000H,(SP)=2000H,(BX)=283FH,CALL WORD PTR [BX]指令的机器代码是 FF17H,试问执行该指令后,(IFFEH)=( )
VN程序中函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序。yoidf(intb[],intn,intflag){inti,j,t;for(i=0;i<n-1;i++)for(j=i+lj<nj++)if(f
最新回复
(
0
)