首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
admin
2010-12-17
49
问题
阅读以下说明和C++代码,将应填入(n)处的字句写上。
[说明]
现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。
需要新增图形Circle,又已知有类XXCircle实现了所需要实现的功能:显示displayIt()。为了继承自shape以提供统一接口,又不希望从头开发代码,希望使用XXCircle。这样将XXcircle作为Circle的一个属性,即Circle的对象包含一个XXCircle对象。当一个Circle对象被实例化时,它必须实例化一个相应的XXCircle对象: Circle对象收到的做任何事的请求都将转发给这个XXCircle对象。通过这种称为Adapter模式,Circle对象就可以通过“让XXCircle做实际工作”来表现自己的行为了。图6-1显示了各个类间的关系。以下是C++语言实现,能够正确编译通过。
[图6-1]
[C++代码]
class Shape{
public:
(1) void display()=0;
};
class Line:public Shape{//省略具体实现
};
class Square:public Shape{//省略具体实现
};
class XXCircle{
public:
void displayIt(){
//省略具体实现
}
//省略其余方法和属性
};
class Circle:public Shape{
private:
XXCircle *pxc;
public:
Circle();
void display();
};
Circle::Circle(){
pxc=(2);
}
void Circle::display()
{
pxc->(3);
}
class Factory{
public:
(4) getshapeInstance(int type){//生成特定类实例
switch(type){
case 1:return new Square;
case 2:return new Line;
case 3 :return new Circle;
default:return NULL;
}
}
};
void main(int argc,char*argv[]){
if(argc !=2){
cout<<"error parameters!"<<endl;
return;
}
int type=atoi(argv[1]);
Factory factory;
Shape*s=factory. (5);
if(s==NULL){
cout<<"Error get the instance!"<<endl;
return;
}
s->display();
delete s;
return;
}
(2)
选项
答案
new XXCircle
解析
转载请注明原文地址:https://kaotiyun.com/show/NvDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
修改现有软件系统的设计文档和代码以增强可读性,这种行为属于________维护。
(42)不是文档测试包括的内容。
传统编译器进行词法分析、语法分析、代码生成等步骤的处理时,前一阶段处理的输出是后一阶段处理的输入,则采用的软件体系结构风格是①。该体系结构的优点不包括②。②处应填入?
对某商店业务处理系统采用数据流图(DFD)进行功能建模,其中“检查订货单”是其中的一个①。由于在进行订货单检查时,需要根据客户的欠款情况、订单金额等多个条件判断是否采取发出催款单、准备货物、发出发货单等行为,此时适合采用②进行描述。①处
在结构化分析方法中,用于行为建模的模型是①,其要素包括②。②处应填入?
某算术表达式用二叉树表示如下,该算术表达式的中缀式为________________,其后缀式为________________。
假设某计算机系统中进程的三态模型如下图所示,那么图中的a、b、c、d处应分别填写(13)________________。
以下关于设计功能测试用例的叙述,______是不正确的。A.尽量用80%测试用例覆盖20%的核心业务模块B.功能测试用例中不包括功能的依从性测试用例C.功能测试用例中包括业务流,也包括测试数据D.功能测试用例的设计应注意缺陷群集现象
关于软件测试,(31)的叙述是正确的。①测试开始越早,越有利于发现软件缺陷②采用正确的测试用例设计方法,软件测试可以做到穷举测试③测试覆盖度和测试用例数量成正比④软件测试的时间越长越好
以下关于数据流图的基本要素的叙述中,不正确的是_______。
随机试题
简述古典管理理论的主要特点。
下列关于骨髓穿刺操作描述错误的是
表现心肾之间主要关系的是
某奶牛场,部分奶牛体温升至40~42℃,精神沉郁,厌食,鼻、眼有浆液性分泌物,鼻镜及口腔黏膜表面糜烂,舌面上皮坏死,流涎增多,呼气恶臭。随后发生严重腹泻,带有黏液和血。部分牛蹄叶炎及趾间皮肤糜烂坏死、跛行。髻甲、颈部及耳后皮肤出现明显皮屑状。1个月内,发病
7个月婴儿发热、呕吐、水样便,每天7~8次,已3天。体查:体温38.5℃,轻度脱水貌,咽部充血,心、肺(-)肠鸣音稍亢进。大便镜检脂肪球++。最可能的诊断是
恶性程度最高的乳癌类型是
关于明朝家庭财产继承权的表述,正确的有()。
在市场经济条件下,资金伴随着生产与交换的进行不断运动,生产与交换活动会给投资者带来利润,表现为资金的()
在培训过程中(),是使培训工作取得成功的关键之举。
A、Theman’slastappointment.B、ProfessorIrwin’sofficehours.C、Studentadvisementduringregistration.D、Theman’shealthpro
最新回复
(
0
)