首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
admin
2010-12-17
54
问题
阅读以下说明和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;
}
(4)
选项
答案
Shape*
解析
转载请注明原文地址:https://www.kaotiyun.com/show/jvDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某企业职工关系EMP(E_no,E_name,DEPT,E_addr,E_tel)中的属性分别表示职工号、姓名、部门、地址和电话;经费关系FUNDS(E_no,E_limit,E_used)中的属性分别表示职工号、总经费金额和已花费金额。若要查询部门为“开
模块A将其中的学生信息,即学生姓名、学号、手机号等放到一个结构体中,传递给模块B,则模块A和B之间的耦合类型为______耦合。
现要开发一个软件产品的图形用户界面,则最适宜采用______过程模型。
某系统中有一个中央数据存储,模块A负责接收新来的数据并修改中央数据存储中的数据,模块B负责访问中央数据存储中的数据,则这两个模块之间的耦合类型为________________。若将这两个模块及中央数据合并成一个模块,则该模块的内聚类型为_________
某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天),则完成该项目的最少时间为________________天。活动FG的松弛时间为________________天。
某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天),则完成该项目的最少时间为________________天。活动FG的松弛时间为________________天。
对于逻辑表达式(((a|b)‖(c>2))&&d<0),需要________________个测试用例才能完成条件组合覆盖。
假设某计算机系统中进程的三态模型如下图所示,那么图中的a、b、c、d处应分别填写(13)________________。
软件开发中经常利用配置库实现变更控制,主要是控制软件配置项的状态变化,不受配置管理控制的是()。
以下关于数据流图的叙述中,不正确的是______。
随机试题
X62W型铣床主轴电动机不能起动的原因之一是控制变压器无输出。()
借贷记账法
A.虚寒呃逆B.阳虚外感C.寒郁肝脉D.气血亏虚E.寒饮咳喘干姜的主治病证是
选择户内高压断路器时,必须校验的环境条件有()。
在《义务教育化学课程标准(2011年版)》中,“知道酸碱对人体健康和农作物生长的影响”内容标准对应的课程主题是()。
“教育起源于儿童对成人无意识的模仿”出自于()。
你村是花卉种植专业村,为提高你村的花卉质量和种植水平,由你负责去外地考察学习优良花卉品种种植技术。你怎么组织?
如果联盟决定在所有人境口岸对从W国进口产品实行100%的检测,那么W国的食品将经常出现违规;如果W国的食品经常出现违规,那么联盟将提醒各成员国采取相应的措施;如果联盟提醒各成员国采取相应的措施,那么联盟的民众将反应强烈;如果联盟的民众反应强烈,那么联盟将决
Howdoesliterarystyleevolve?Surprisingly,(1)_____lieinwordswithseeminglylittlemeaning,suchas"to"and"that".B
InfraGardisagrass-rootsefforttorespondtotheneedforcooperationandcollaborationincounteringthethreatofcybercri
最新回复
(
0
)