首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 在下面的C++代码中,类SalesTicket能够完成打印票据正文的功能,类HeadDec- orator与FootDecorator分别能够完成打印票据的台头和脚
阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 在下面的C++代码中,类SalesTicket能够完成打印票据正文的功能,类HeadDec- orator与FootDecorator分别能够完成打印票据的台头和脚
admin
2008-05-15
37
问题
阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
在下面的C++代码中,类SalesTicket能够完成打印票据正文的功能,类HeadDec- orator与FootDecorator分别能够完成打印票据的台头和脚注的功能。
已知该程序运行后的输出结果如下所示,请填补该程序代码中的空缺。
这是票据的台头!
这是票据正文!
这是票据的脚注!
---------------
这是票据的台头!
这是票据的脚注!
【C++程序代码】
#include
using namespace std;
class SalesTicket {
public:
(1) printTicket() { cout << " 是票据正文!" << endl;}
class Decorator : public SalesTicket{
SalesTicket *ticket;
public:
Decorator(SalesTicket *t){ ticket = t; }
void printTicket(){
if(ticket != NULL)
ticket->printTicket();
}
};
class HeadDecorator : public Decorator{
public:
HeadDecorator(SalesTicket *t): (2) { }
void printTicket() {
sour << "这是票据的台头!" << endl;
Decorator::printTicket();
}
};
class FootDecorator :public Decorator{
public:
FootDecorator(SalesTicket *t): (3)
void printTicket() {
Decorator::printTicket();
cout << "这是票据的脚注!" << endl;
}
};
void main(void) {
SalesTicket t;
FootDecorator f(&t);
HeadDecorator h( (4) );
h.printTicket();
cout << "-------------------------"<< endl;
FootDecorator a(NULL);
HeadDecorator b( (5) );
b.printTicket();
}
选项
答案
(1)virtual void (2)Decorator(t) (3)Decorator(t) (4)&f (5)&a
解析
本题实际上使用了设计模式中的Decorator模式。
从代码可以分析得出,类SalesTicket完成了票据正文的输出,FootDceorator和 HeadDecorator类都继承了Decorator,Decorator继承SalesTicket,FootDecorator和HeadDe- corator类在构造函数的时候都需要对其父类进行初始化,因此,空(2)和(3)应为 Decorator(t);这些类中都具有printTicket方法,根据SalesTicket类中方法的定义可以得出,此方法的返回值为void类型,分析主程序中h.printTicket()可以输出“这是票据的台头!这是票据正文!这是票据的脚注!”的结果,并且考虑到h.printTieket()的执行路径为先执行cout<<"这是票据的台头!"<
转载请注明原文地址:https://kaotiyun.com/show/TsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
信息处理人员需要培养信息意识。信息意识的内涵一般不包括(65)。
常用的数据收集方法一般不包括(7)。
()是一种不可靠的、无连接的协议,但可以保证应用程序间的通信。
欲在桌面上移动窗口位置可以拖曳(36)。
数据源有多种,从传感器、智能仪表自动发送过来的数据属于______。
信息处理技术员的网络信息检索能力不包括(10)。
已知5个自然数(可有重复)的最小值是20,最大值是22,平均值是21.2,则可以推断,中位数是____________。
在Excel2007中,设单元格A1中的值为-1,B1中的值为1,A2中的值为0,B2中的值为1,若在C1单元格中输入函数“=IF(AND(A1>0,B1>0),A2,B2)”,按回车键后,C1单元格中的值为______。
操作系统的资源管理功能不包括________________。
随机试题
在氧化还原滴定法中,高锰酸钾法使用的是()。
1994年12月1日下午1时许,××地质学院家属××在挖冬贮菜窖时发现一口大缸,内有一“铜桶”(实际上铅罐),打开桶盖螺丝后,发现桶内有铅和石蜡,石蜡中有一用绳子拴着的“铜棒”(实际上是放射源)。在场人员以为发现了“宝物”,便取出相互传看,有人还用牙齿咬。
流行性出血热发热期治疗,下列哪项是不适宜的()
君当作磐石,妾当作蒲苇,______,______。(《孔雀东南飞》)
李某的妻子于2015年在某医院产下一女婴,后被诊断为脑瘫。李某及其父亲认为系医疗事故所致,遂多次到医院讨要说法、要求赔偿。为给院方施加压力,李某及其父亲纠集王某、孙某等十余人来到医院,在医院停车场进出口拉横幅,长时间影响车辆的正常进出,并用扩音喇叭高声喧哗
救生圈:浮力
IfthetradeunionistJimmyHoffawerealivetoday,hewouldprobablyrepresentcivilservant.WhenHoffa’sTeamsterswereinthe
对于学习差的学生最好把失败归因于()。
(21)采用不同频率的信号在同一信道上传输数据。
下列关于自由表的描述,正确的是()。
最新回复
(
0
)