首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
阅读以下说明和C++代码,将应填入(n)处的字句写上。 [说明] 现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。 需要新增图形Circle,又已知有类XX
admin
2010-12-17
63
问题
阅读以下说明和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
软件设计师下午应用技术考试
软考中级
相关试题推荐
给定包含n个正整数的数组A和正整数x,要判断数组A中是否存在两个元素之和等于x。先用插入排序算法对数组A进行排序,再用以下过程P来判断是否存在两个元素之和等于x。low=l;high=n;while(high>low)ifA[low]+A[hig
在结构化分析方法中,用于行为建模的模型是①,其要素包括②。①处应填入?
按照开发阶段划分,软件测试可以分为______。①单元测试②集成测试③系统测试④确认测试⑤用户测试⑥验收测试⑦第三方测试
在字长为16位、32位、64位或128位的计算机中,字长为______位的计算机数据运算精度最高。
调用函数时若是引用调用方式,则是将________________。下面所定义的函数f1为值调用方式,函数f2为引用调用方式。若有表达式x=f1(5),则函数调用执行完成后,该表达式中x获得的值为________________。
对于逻辑表达式(((a|b)‖(c>2))&&d<0),需要________________个测试用例才能完成条件组合覆盖。
Bug记录信息包括________________。①被测软件名称②被测软件版本③测试人④错误等级⑤开发人⑥详细步骤
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(2)
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(1)
随机试题
医用直热式热敏相机的核心部件是
急性乳腺炎中医称发于哺乳期者称
甲对于乙享有100万元的债权,乙对于丙享有100万元的债权。因到期乙无力偿还甲的债权,又不及时行使对于丙的债权,甲提起代位权诉讼。下列选项正确的是()。
粒状物料试样经过筛分不能通过筛孔的试样质量称为筛余。()
背景资料某水利枢纽工程建设内容包括大坝、溢洪道、水电站等建筑物。该工程由某流域管理机构组建的项目法人负责建设,某施工单位负责施工,在工程施工过程中发生如下事件:事件一:溢洪道施工需要进行爆破作业,施工单位使用一辆3.0t的小型载重
某建设项目工期为2年,工程合同价为500万元人民币。根据《建筑工程施工许可管理办法》的规定,申请施工许可证时到位资金不得少于()万元。
又称为单位信托基金的基金是()
()瑟斯顿提出的态度测量方法是等距量表法。
Moneycorrupts,theysay,andnowthere’sastudythatshowswhypeoplegetsosneakywhenitcomestomakingaprofit.Therese
Supposewebuiltarobot(机器人)toexploretheplanetMars.Weprovidetherobotwithseeingdetectorstokeepitawayfrom【B1】____
最新回复
(
0
)