首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显示display()。需要新增图形Circle,又已知有类XXCircle实
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显示display()。需要新增图形Circle,又已知有类XXCircle实
admin
2014-10-11
68
问题
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸对应栏内。
【说明】现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显示display()。需要新增图形Circle,又已知有类XXCircle实现了所需要实现的功能:显示displaylt()。为了继承自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:publ ic Shape(//省略具体实现
};
class Square:public Shape{//省略具体实现
};
ClasS XXCircle(
public:
void displayIt()(
//省略具体实现
}
//省略其余方法和属性
};
Class Circle:publ iC 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:returrl flew C1rcle;
default:return NULL;
}
}
};
void main(int argc,char’argv[]){
i f(argc!=2){
tout<<“error parameters!”<
return;
}
int type:atoi(argv[1]);
Factory factory;
Shape。S=factory.(5);
if(S==NULL){
cout<<*Error get the instance!“<
return;
}
s一>display();
delete s;
rettlrn;
}
选项
答案
(1)virtual (2)new XXCircle (3)displayIt() (4)Shape*: (5)getShapeInstance(type)
解析
由“=0”可轻易判知display()函数是一个纯虚函数,因此空(1)应填virtual。由题设,Circle实例化时,须先实例化一个XXCircle对象,而pxciE好也是XXCircle对象指针,故空(2)应填new XXCircle。Circle在此充当适配器的角色,它所做的就是将消息转发给XXCircle实例,display()是“显示”消息,故调用XXCircle的相应方法,故空(3)应填displayIt()。方法getShapeInstance(1int type)的返回值有new Line、new Square以及new circle,参照类的层次结构,可得空(4)应填Shape*。注意是指针。Factory类仅定义了一个方法getShapeInstance,而此处语义正是取得一个形状进行显示,故空(5)应填getShapeInstance(type)。
转载请注明原文地址:https://kaotiyun.com/show/jaDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
数据库是按照一定的数据模型组织、存储和应用的______的集合。
某计算机系统页面大小为4K,进程P的页面变换表如下表所示。若P中某数据的逻辑地址为十六进制2C18H,则该地址的页号和页内地址分别为2和C18H;经过地址变换后,其物理地址应为十六进制______。
限制MailUser邮件主机里每个用户的邮箱大小不超过10MB,如何配置?IMail安装完成后,系统自动建立了一个名为root的用户,在默认情况下root用户是个失效的账号,如何设置使其生效?
限制MailUser邮件主机里每个用户的邮箱大小不超过10MB,如何配置?限制MailUser邮件主机里每个用户邮箱里所能存放的最多邮件数量不超过20个,如何配置?
阅读以下说明,回答问题1至问题7。[说明]在IMail管理器中,选中MailUser邮件主机,然后在它右边的面板中选中General选项卡,出现邮件主机的配置窗口如图3-1所示。如果在IMail管理器中,选中Userl用户,然后在
同一个VLAN中的成员可以形成一个广播域,从而实现何种功能?将Switcbl的端口6划入v2的配置命令如下,请给出空白处的配置内容:Switch1(config)#interfacefastEthemet0/6(进入端口6配置模式)S
SSL协议使用(1)密钥体制进行密钥协商。在IIS5.0中,Web服务器管理员必须首先安装Web站点数字证书,然后Web服务器才能支持SSL会话,数字证书的格式遵循ITU-T(2)标准。通常情况下,数字证书需要由(3)颁发。如果Web服务器管理员希望W
请认真阅读下列有关计算机网络防火墙的说明信息,回答问题1~5。[说明]某单位的内部局域网通过防火墙与外部网络的连接方式及相关的网络参数如下图所示。
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。将答
阅读以下说明,回答问题1、问题2和问题3,将解答填入对应栏内。[说明]在因特网的发展过程中,WWW(WorldWideWeb)和域名服务系统(DNS)两项技术起了重大的推动作用,在域名服务系统(DNS)出现之前,所有的因特网主机名都存储
随机试题
Informationaboutthenewsystemiseasyto______ontheInternet.
既能破气消积,又能化痰除痞的药物是( )。
关于边界层的基本概念,下述说法中错误的是()。
(2010)在3~20kV电网中,为了测量相对地电压,通常采用()。
会计科目设置包括如下( )内容。
既反映偿债能力,又反映获利能力的指标是()。
下图是我国主要城市不同季节降水相对值折线图,据此回答问题。关于下列城市降水季节变化成因的判断,其中错误的是()。
公文办理主要分为()。
【傅兰雅】西北大学2016年中国史真题;湖南大学2017年中国史真题
功能性磁共振成像技术的缩写是
最新回复
(
0
)