首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C++代码,回答问题 [说明] 在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式进行组合,将小对象组合成复杂的大对象。 以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一个标题、一串字
阅读下列函数说明和C++代码,回答问题 [说明] 在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式进行组合,将小对象组合成复杂的大对象。 以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一个标题、一串字
admin
2012-02-20
54
问题
阅读下列函数说明和C++代码,回答问题
[说明]
在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式进行组合,将小对象组合成复杂的大对象。
以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一个标题、一串字符以及一些有项目符号的项目。Builder类规定组成文件的方法,Director类利用这个方法产生一份具体的文件。图5-1显示了各个类间的关系。
[图5-1]
以下是C++语言实现,能够正确编译通过。
[C++代码]
class Builder{
public:
virtual void makeTitle(string title) = 0;
virtual void makestring(string str) = 0;
virtual void makeItems( (1) items) = 0;
virtual string getResult() = 0;
};
class Director{
private:
(2) builder;
public:
Director(Builder *builder){
this->builder = builder;
}
string construct(){
vectoritems;
items.push_back("早安"); items.push_back("午安");
builder->makeTitle("Greeting");
builder->makeString("从早上到白天结束");
builder->makeItems(items);
builder->makeString("到了晚上");
(3) ;//清空items向量
items.push_back("晚安"); items.push_back("好梦");
builder->makeItems(items);
return builder->getResult();
}
};
class TextBuilder : public (4) {
private:
string buffer;
public:
TextBuilder(){
buffer = " ";
}
void makeTitle(string title){
buffer += "=======================================\n";
buffer += "『" + title + "』\n";
buffer += "\n";
}
void makeString(string str){
buffer += "■" + str + "\n";
buffer += "\n";
}
void makeItems(vectoritems){
vector::iterator it;
for(it = items.begin(); it != items.end(); it++){
buffer += "." + *it + "\n";
}
buffer += "\n";
}
string getResult(){
buffer += "========================\n";
return buffer;
}
};
int main()
{
Director *director = new Director(new TextBuilder());
string result = (string)director-) (5) ;
cout< return 0;
}
选项
答案
vector Builder* items.clear() Builder construct()
解析
转载请注明原文地址:https://kaotiyun.com/show/glDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
堆是一种数据结构,分为大顶堆和小顶堆两种类型。大(小)顶堆要求父元素大于等于(小于等于)其左右孩子元素。则________________是一个小顶堆结构。堆结构用二叉树表示,则适宜的二叉树类型为________________。对于10个结点的小顶堆,其
面向对象分析与设计是面向对象软件开发过程中的两个重要阶段,下列活动中,(25)不属于面向对象分析阶段。
某企业有生产部和销售部,生产部负责生产产品并送入仓库,销售部从仓库取出产品销售。假设仓库可存放n件产品。用PV操作实现他们之间的同步过程如下图所示。其中,信号量S是一个互斥信号量,初值为(1);S1是一个(2);S2是一
测试用例是测试使用的文档化的细则,其规定如何对软件某项功能或功能组合进行测试。测试用例应包括下列(32)内容的详细信息。①测试目标和被测功能。②测试环境和其他条件。③测试数据和测试步骤。④测试记录和测试结果。
________________不属于网络测试对象。
以下关于信息和数据的描述中,错误的是________________。
对于逻辑表达式((a||b)||(c&&d)),需要()个测试用例才能完成条件组合覆盖。
某汽车维修公司有部门、员工和顾客等实体,各实体对应的关系模式如下:部门(部门代码,部门名称,电话)员工(员工代码,姓名,部门代码)顾客(顾客号,姓名,年龄,性别)维修(顾客号,故障情况,维修日期,员工代码)假设每个部门允许有多部电话,则电话属性为
在计算机系统中常用的输入/输出控制方式有无条件传送、中断、程序查询和DMA等。其中,采用______方式时,不需要CPU控制数据的传输过程。
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
随机试题
我国解决民族问题的根本出发点是:
未来深海水下线缆的外皮是由玻璃而不是由特殊的钢材或铝合金制成的。原因是金属具有颗粒状的微观结构,在深海压力之下,粒子交结处的金属外皮易于断裂。玻璃外皮就不会有这种情况,因为玻璃看起来是固体,由于它在压力之下可以流动,所以可将之视为液体。以下哪项最有可能从上
A.阴茎头型尿道下裂B.阴茎型尿道下裂C.阴茎阴囊型尿道下裂D.阴囊型尿道下裂E.会阴型尿道下裂适用于阴囊纵隔蒂皮瓣法修复的是
某男,37岁。2003年5月17日就诊,发热5天,伴全身酸痛,干咳无痰,胸闷气促,腹泻3~4次/天。1周前其妻因患“SARS”已住院治疗。体查:T38.9℃,P130次/分,R40次/分,BP100/70mmHg,神清合作,皮肤巩膜无黄染,浅表淋
某商场2001年2月份期初存货成本136000元,售价200000元;本期购入存货成本508000元,售价720000元;本期实现销售收入800000元。在采用零售价法核算的情况下,该商场2月末资产负债表中存货项目(假设期末存货未发生跌价损失)金额为(
近日,科学家根据火星车在加勒陨坑拍摄的图像发现,火星陨坑内的远古土壤存在着类似地球土壤裂纹剖面的土壤样本,通常这样的土壤存在于南极干燥谷和智利阿塔卡马沙漠,这暗示着远古时期的火星可能存在生命。以下哪项如果为真,最能支持上述结论?
下面对商鞅变法论述不正确的是()。
某学院10名博士生(B1~B10)选修6门课程(A~F)的情况如下表(用√表示选修): 现需要安排这6门课程的考试,要求是:(1)每天上、下午各安排一门课程考试,计划连续3天考完;(2)每个博士生每天只能参加一门课程考试,在这3天内考完全部选修课;
Thenaturalformsofenergyarethesun,thewind,thesea______heatfromthecenteroftheearth.
A、Byofferingfreeservicenexttime.B、Byrecommendingqualifieddoctorstothem.C、Byprovidingfinancialhelpforthem.D、By
最新回复
(
0
)