首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include #include using namespace std; class Animal{ public: virtual string
有如下程序: #include #include using namespace std; class Animal{ public: virtual string
admin
2021-05-06
41
问题
有如下程序:
#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、Dog speak Voice - Cat speak Voice
B、Dog speak Woof - Cat speak Miaow
C、Animal speak Voice - Animal speak Voice
D、Animal speak Woof - Animal speak Miaow
答案
C
解析
本题考查虚函数的运用,本题中定义Dog d; Type(d)时,执行基类的Type函数,输出Animal,然后输出speak,然后执行基类的Speak函数输出Voice,最后输出-,同理cat输出类似,所以结果为C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/xGfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout<<setfill(’#’)<<setw(4)<<"OK"<<123<<endl;retur
下列关于运算符重载的叙述中,正确的是()。
下列模板声明中,有语法错误的是()。
在数据管理技术发展的三个阶段中,数据共享最好的是()。
下列描述中,不符合良好程序设计风格要求的是()。
下列关于函数参数的叙述中,正确的是()。
有如下程序段:inti=0,j=1;int&r=i;//①r=j//②int*p=&i;//③*p=&r;//④其中会产生编译错误的语句是(
假设函数fun已经定义,其原型为“voidfun(inta,intb=7,char*p="*");”下列函数调用中错误的是()。
当派生类继承一个基类时,默认的继承方式为()。
数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
随机试题
不满()岁的人有违法行为的,不予行政处罚,责令监护人加以管教。
乳腺囊性增生病的典型临床表现是
Krafft点是离子表面活性剂的特征值,也是离子表面活性剂使用温度的上限。()
某建设项目,承包人与分包人口头约定了施工合同内容,施工任务完成后,由于承包人欠工程款而发生纠纷,但双方一直没有签订书面合同,此时应认定()。
下列关于并购支付方式的说法中,不正确的是()。
下列不属于员工减压措施的是()。
我国《教育法》第四十一条规定:“国家鼓励学校及其他教育机构、社会组织采取措施,为公民接受()创造条件。”
试举例说明五种复述策略及其实施。
Somanydirectors______,theboardmeetinghadtobeputoff.
下列叙述中,正确的一条是______。
最新回复
(
0
)