首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include #include using namespace std; class Animal{ public: virtual string
有如下程序: #include #include using namespace std; class Animal{ public: virtual string
admin
2021-09-05
19
问题
有如下程序:
#include
#include
using namespace std;
class Animal{
public:
virtual string GetType() const { return "Animal"; }
virtual string GetVoice() const { return "Voice"; }
};
class Dog:public Animal{
public:
string GetType() const { return "Dog"; }
string GetVoice() const { return "Woof"; }
};
class Cat:public Animal{
public:
string GetType() const { return "Cat"; }
string GetVoice() const { return "Miaow"; }
};
void Type(Animal a) { cout<
void Speak(Animal& a) { cout<
int main() {
Dog d; Type(d); cout<<" speak "; Speak(d); cout<<" - ";
Cat c; Type(c); cout<<" speak "; Speak(c); cout<
return 0;
}
运行时的输出结果是
选项
A、DogspeakVoice-CatspeakVoice
B、DogspeakWoof-CatspeakMiaow
C、AnimalspeakVoice-AnimalspeakVoice
D、AnimalspeakWoof-AnimalspeakMiaow
答案
D
解析
本题考查虚函数的运用,本题中定义Dogd;Type(d)时,执行基类的Type函数,输出Animal,然后输出speak,然后执行派生类的Speak函数输出Woof,最后输出-,同理cat输出类似,所以结果为D选项正确。
转载请注明原文地址:https://kaotiyun.com/show/AI5p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>voidfun(int&x,inty){intt=x;x=y;y=t;}intmain(){inta[2]={23,42};fun(a[1],a[0]);std::cout<<a[0]
已知函数f的原型是voidf(int*a,long&b);,变量v1、v2的定义是:intv1;loongv2;下列调用语句中正确的是()。
如下函数的作用是以双倍行距输出文件:voiddouble_space(ifstream&f,ofstream&t){charc;whilc(_________){;_________if(c==
下列关于运算符重载的叙述中,错误的是()。
下列叙述中正确的是()。
下列关于运算符重载的叙述中,正确的是()。
已知表达式++a中的“++"是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为()。
软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于
if语句的语法格式可描述为:格式1:if(<条件>)<语句>或格式2:if(<条件>)<语句1>else<语句2>关于上面的语法格式,下列表述中错误的是()。
下列控制对齐方式的操作符中,错误的是()。
随机试题
关于邮寄纳税申报方式,下列说法不正确的是()。
合谋是交易双方有同谋行为,以同样的(_)进行委托并交易的行为。
A公司2002年收入30000万元,税后利润3000万元,支付股利1200万元,年末负债30000万元,年末净资产30000万元,发行在外普通股6000万股。2003年拟投资W项目,W项目需投资6000万元,这些资金有两种筹资方式:增发或借
知觉的特性包括()。
能够直接引起法律关系产生、变更和消灭的条件或情况是法律事实。()
YouaretheadministratorofSQLServercomputers.OneserverisnamedSQL7,andotherisnamedSQL2000.SQL7isrunningSQLSer
A、大家都喝B、你应该喝C、谁都不喝D、你可以不喝B“不喝说不过去”两个否定词同时出现表示肯定,“说不过去”是“不应该”的意思,整句就是“应该喝”的意思。
Surveysshowthateveryyearonly10percentofcigarettesmokersswitchbrands.Yetthemanufacturershavebeenspendinganamo
A、Hewantstogethismoneyback.B、Hewantstoexchangethesweaterforanotherone.C、Hewantstheclerktohelphimreadthe
Forthispart,youareallowed30minutestowriteashortessay.Youshouldstartyouressaywithabriefdescriptionofthepi
最新回复
(
0
)