首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include #include using namespace std; class Publication{ public: Publication(string n="Unknown")
有如下程序: #include #include using namespace std; class Publication{ public: Publication(string n="Unknown")
admin
2017-02-18
30
问题
有如下程序:
#include
#include
using namespace std;
class Publication{
public:
Publication(string n="Unknown"):name(n){}
const string getName()const{return name;}
virtual const string getType()const{return"Unknown";}
private:
string name;
};
class Book:public Publication{
public:
Book(string name):Publication(name){}
virtual const string getType()const{return"Book";}
};
void showPublication(Publication&p){
cout<
}
int main(){
Book book("C++");
showPublication(book);
return 0;
}
运行时的输出结果是( )。
选项
A、Book:C++
B、Book:Unknown
C、Unknown:C++
D、Unknown:Unknown
答案
A
解析
C++中,多态调用必须满足两个条件:被调用的成员函数是虚函数;必须通过基类类型的引用或指针进行函数调用。
题意的main()函数中首先定义一个Book类对象,对象名为book,在构造book对象时,程序过程如下:首先调用Book类的构造函数,传入参数“C++”,在构造函数执行函数体前,再调用基类Publication的默认构造函数:传入字符串“C++”,基类构造函数在成员初始化列表中,使用传入的参数“C++”为name赋值;此时继承于基类的成员:name存放字符串“C++”。
然后main()函数调用showPublication()函数,传入book对象:showPublication()函数接收Publication类对象的引用p,然后调用p.getType()和p.getName()输出。由于getType()成员函数属于虚函数,p属于基类对象的引用,所以通过p调用getType()函数满足多态调用,执行p实际引用对象类型的getType(),即Book类的getType(),输出:“Book”;而getName()不是成员函数,所以不满足多态调用,执行基类的成员函数getName(),输出name:“C++”。综上,程序输出:Book:C++。本题答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/fIAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
检查软件产品是否符合需求定义的过程称为
下面关于构造函数和析构函数的描述中,错误的是()。
下列关于C++函数的描述中正确的是()。
包容类Contain和内嵌类Embed定义如下:#include<iostream.h>classContain{private:intX;protected:intz;public:
下列运算符中全都可以被友元函数重载的是
下列程序的输出结果是#include<iostream.h>intb=2;intfunc(int*a){b+=*a;return(b);}voidmain()
下面关于构造函数和析构函数的描述,错误的是()。
对于循环队列,下列叙述中正确的是
下列语句段中不是死循环的是()。
随机试题
对于隐睾的治疗,以下哪项是正确的?
我国《合同法》将技术合同分为()
采用逻辑框架法进行项目分析,在“影响/宏观目标”这一目标层次上的信息来源有()。
伪造会计凭证,是指用涂改、挖补等手段来改变会计凭证的真实内容,歪曲事实真相的行为。
“五位一体”的监管体系中不包括()。
下列方法中不适用于计量银行账户利率风险的是()。
下列关于银行业从业人员行为的说法,不正确的有()。
一天之中气温最高值出现在()。
关于探究活动,下列说法正确的是()。
根据下列材料回答问题。我国供气来源多元化,主要包括国产气和进口气两部分。国产气主要有常规天然气、页岩气和煤层气等,进口气主要有进口LNG和进口管输气。近年来,我国天然气供应量稳步增加,国产气、进口管输气、进口LNG都呈上涨趋势。国产气从2010年
最新回复
(
0
)