首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表16—2所示。 该绘图软件的扩展性要求,将不断扩充新的图形和新的绘图程序。为了避免
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。 【说明】 欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表16—2所示。 该绘图软件的扩展性要求,将不断扩充新的图形和新的绘图程序。为了避免
admin
2014-11-13
55
问题
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。
【说明】
欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。以绘制直线和圆形为例,对应的绘图程序如表16—2所示。
该绘图软件的扩展性要求,将不断扩充新的图形和新的绘图程序。为了避免出现类爆炸的情况,现采用桥接(Bridge)模式来实现上述要求,得到如图16—2所示的类图。
【C++代码】
Class DPI{
publ ic:
static void draw_aline(double xl,double yl,double x2,double y2){/*代码省略*/)
static void draw—a—circle(double x,double y,double r)(/*代码省略*/)
};
C1ass DP2(
publ ic:
static void drawline(double xl,double x2,double yl,double y2)(/*代码省略*/)
static void drawcircle(double X,double Y,double r)(/*代码省略*/)
};
class Drawing(
public:
(1) ;
(2) ;
};
class vodrawing:publ ic Drawing(
publ ic:
void drawLine(double x1,double y1,double x2,double y2)(/*代码省略*/)
void drawCircle(double X,double Y,double r)( (3) ; )
};
Class vidrawing:public Drawing{
publ ic:
void drawLine(double xl,double yl,double x2,double y2)(/*代码省略*/)
void drawCircle(double X,double Y,double r)((4) )
};
C1ass Shape{
publ ic:
(5);
Shape(Drawing*dp)(_dp=dp;)
void drawLine(double x1,double yl,double x2,double y2){
dp一>drawLine(x1,y1,x2,y2);)
void drawCircle(double X,double Y,double r)(一dp一>drawCircle(X,Y,r);}
private:Drawing。dp;
};
class Rectangle:public Shape{
publ ic:
void draw()( /*代码省略*/ }
//其余代码省略
};
class circle:public Shape{
private:double X,—y,一r;
public:
Circle(Drawing*dp,double x,double y,double r):(6)(x=x;_y=y;_r=r;)
void draw(){drawCircle(mX,_y,_r); )
};
选项
答案
(1)virtual void drawLine(double xl,double y1,double x2,double y2); (2)virtual void drawCircle(double X,double Y,double r); (3)DPI.draw-a-ircle(x,y,r);(4)DP2.drawCircle(x,y,r); (5)virtual void draw();(6)Shape(dp)。
解析
本题考查Bridge桥接模式的概念及应用,将抽象与其实现解耦,使它们都可以独立地变化。大致意思是说:将一组实现与另一组使用他们的对象分离。这里的实现指的是抽象类及其派生类用来实现自己的对象(而不是抽象类的派生类,这些派生类被称为具体类)Drawing是一个虚拟基类,里面包含了希望不同策略实现的算法,派生类V1Drawing,V2Drawing都派生自Drawing,对基类中的希望实现的算法都作了具体实现,且它们都含有drawLine和drawCircle函数,所以Draw类中缺失的应该是这两个算法,于是
(1)virtual void drawLine(double x1,double y1,double x2,double y2);
(2)virtual void drawCircle(double x,double y,double r);DPI和DP2中包含了绘制Line和Circle的具体实现的Static方法,因此在V1Drawing,V2Drawing类中可以直接进行调用它们。
(3)DPL draw—a—circle(x,y,r)
(4)DP2.drawCircle(x,y,r);Shape类派生出Rectangle和Circle类,里面都含有draw方法,但是具体draw方法的实现却不相同,所以(5)virtual void draw(),最后Circle的构造函数初始化了后4个变量,还有继承自shape的变量一dp未做初始化,因此调用shape~构造函数做初始化(6)shape(dp)。
转载请注明原文地址:https://www.kaotiyun.com/show/N4DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
[配置路由器信息]Currentconfiguration:!version11.3noservicepassword-encryption!hostnamerouter1
在由L2TP构建的VPN中,主要由①和②两种类型的服务器构成。1.将图5-1中①和②处空缺名称填写在答题纸的相应位置。2.简要说明两种服务器的主要作用。某路由器(在图5-1中没有标出)的部分配置信息如下所示,请解释其中标有下划线部分的含
造成故障1的原因是什么?如何解决?1.将故障2中(1)和(2)两处合适的答案填入答题纸相应的解答栏内。2.故障2如何解决?
阅读以下说明,回答问题1至问题3,将解答填入答题纸对应的解答栏内。说明网络解决方案如图4-1所示。该网络原先使用的是国外品牌的交换机,随着网络规模的扩大,增添了部分国产品牌的交换机,交换机1至交换机5均是国产10M/100M自适应交换机,交换机6
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,解释(6)处的命令。Switeh#vlanSwitch(vla
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持根据说明中inittab文件的内容,系统引导成功后,工作在______状态。A.单用户字符模式
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持Linux系统运行级别3工作在______状态。A.单用户字符模式B.多用户字符模式
阅读以下说明,回答问题1至问题8。[说明]Linux系统开机引导时首先启动内核,由内核检查和初始化硬件设备,载入设备的驱动程序模块,安装root文件系统,然后内核将启动一个名为init的进程。在init运行完成并启动其他必要的后续进程后,
在校园网设计过程中,划分了很多VLAN,采用了VTP来简化管理。1.VTP信息只能在(1)端口上传播。2.运行VTP的交换机可以工作在三种模式:(2)、(3)、(4)。3.共享相同VLAN数据库的交换机构成一个(5)。该校园网在
随机试题
简述需要层次理论。
手术切口感染常见的原因有()
男,60岁。患高血压病多年,1年来血压经常为170~180/110~120mmHg。X线胸片示左心室增大,肺淤血。眼底为视网膜动脉硬化第三期病变。尿常规正常。诊断为
在港口工程质量检验中,把工程划分为()。
阅读下面材料,回答问题。小美很喜欢唱歌,从小就希望自己在音乐方面有所成就。在她还没有确定是否报考音乐学院前,她在众人面前就能很好地展现自己的歌声。她确定报考音乐学院后,学习更加勤奋努力,希望实现自己的目标。但是在音乐学院的专业课面试过程中,由于她
“桃李不言,下自成蹊”的德育方法是()。
农夫山泉公司的广告“农夫山泉有点甜”“我们不生产水,我们只是大自然的搬运工”这样的广告语深入人心。请你分析这些广告语的特点。(人大2014年研)
【B1】【B13】
Inthissection,youwillheararadiotalkaboutsomefestivalsaroundtheworld.Thetalkwillbereadonlyonce.Forquestion
A、Itsavestime.B、Itincreasesparkingcapacity.C、Itensuresdrivers’safety.D、Itreducescardamage.B
最新回复
(
0
)