首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码, [说明] 现要编写一个画矩形的程序,目前有两个画图程序:DP1和DP2,DP1用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2则用drawline(x1,x2,y1,y2)画一条直线。当实
阅读以下说明和C++代码, [说明] 现要编写一个画矩形的程序,目前有两个画图程序:DP1和DP2,DP1用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2则用drawline(x1,x2,y1,y2)画一条直线。当实
admin
2013-01-05
54
问题
阅读以下说明和C++代码,
[说明]
现要编写一个画矩形的程序,目前有两个画图程序:DP1和DP2,DP1用函数draw_a_line(x1,y1,x2,y2)画一条直线,DP2则用drawline(x1,x2,y1,y2)画一条直线。当实例化矩形时,确定使用DP1还是DP2。为了适应变化,包括“不同类型的形状”和“不同类型的画图程序”,将抽象部分与实现部分分离,使它们可以独立地变化。这里,“抽象部分”对应“形状”,“实现部分”对应“画图”,与一般的接口(抽象方法)与具体实现不同。这种应用称为Bridge(桥接)模式。图6-1显示了各个类间的关系。
[图6-1]
这样,系统始终只处理3个对象:Shape对象、Drawingg对象、DP1或DP2对象。以下是C++语言实现,能够正确编译通过。
[C++代码]
class DP1{
public:
static void draw_a_line(double x1,double y1,double x2,double y2){
//省略具体实现
}
};
class DP2{
public:
static void drawline(double x1,double x2,double y1,double y2){
//省略具体实现
}
};
class Drawing{
public:
(1) void drawLine(double x1,double y1,double x2,double y2)=0;
};
class V1Drawing:public Drawing{
public:
void drawLine(double x1,double y1,double x2,double y2){
DP1::draw_a_line(x1,y1,x2,y2);
}
};
class V2Drawing:public Drawing{
public:
void drawLine(double x1,double y1,double x2,double y2){
(2)
}
};
class Shape{
privatc:
(3) dp;
public:
Shape(Drawing*dp);
virtual void draw()=0;
void drawLine(double x1,double y1,double x2,double y2);
};
Shape::Shape(Drawing*dp)
{
_dp=dp;
}
void Shape::drawLine(double x1,double y1,double x2,double y2)
{ //画一条直线
(4);
}
class Rectangle:public Shape{
privatc:
double_x1,_y1,_x2,_y2;
public:
Rectangle(Drawing *dp,double x1,double y1,
double x2,double y2);
void draw();
};
Rectangle::Rectangle(Drawing*dp,double x1,double y1,double x2,double y2)
: (5)
{
_x1=x1;_y1=yl;_x2=x2;_y2=y2;
}
void Rectangle::draw()
{
//省略具体实现
}
(1)
选项
答案
virtual
解析
由函数drawLine()结尾的“=0”易知,空(1)应填virtual。
转载请注明原文地址:https://kaotiyun.com/show/5eDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
以下关于信息和数据的描述中,错误的是________________。
以下说法不正确的选项包括(48)。①软件测试不仅仅指测试的执行,还包括很多其他的活动②软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行③应用H模型有利于资源调配,有助于跟踪测试投入的流向④H模型指
在结构化分析模型中,______描述了所有在目标系统中使用的和生成的数据对象。
采用________________表示带符号数据时,算术运算过程中符号位与数值位采用同样的运算规则进行处理。
某系统中,模块A处理与销售相关的所有细节,仅需要发送一个包含销售量、价格和时间的报表到模块B,则这两个模块之间为()耦合。
()主要对与设计相关的软件体系结构的构造进行测试。
通常VLAN有静态和动态2种实现方式,这2种方式分别是如何实现的?各有什么特点?Switch1采用的是哪种实现方式?填充VLAN信息表如表9-3所示,将答案填写在答题纸相应位置。
阅读以下说明和C程序,将应填入(n)处的字句写在答题纸的对应栏内。【说明】假设需要将N个任务分配给N个工人同时去完成,每个人都能承担这N个任务,但费用不同。下面的程序用回溯法计算总费用最小的一种工作分配方案,在该方案中,为每个人分配1个不同的任
对文法C[S]:S→a,|∧|(T);T→T,S|S;回答问题1~问题3。
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。[说明]借助一个栈结构,可实现二叉树的非递归遍历算法。InOrderTraverse数实现中序非递归遍历,遍历过程如下:若不是空树,根节点入栈,进入左子树;若已
随机试题
下列有关呼吸困难的描述正确的是
A.黄芩B.黄连C.金银花D.石膏E.知母具有抗过敏作用的药物是
A.强度高,耐磨损B.颜色美观C.刺激牙髓D.安抚作用E.防龋功能以下材料的特点是:复合体
()又称为内部发行,是指面向少数特定的投资人发行证券的方式。
甲公司为增值税一般纳税人,适用的增值税税率为17%。2012年6月5日,向乙公司赊销商品500件,单位售价600元(不含增值税),单位生产成本480元,甲公司发出商品并开具增值税专用发票。根据协议约定,商品赊销期为1个月,3个月内乙公司有权将未售出的商品退
“人芝兰之室,久而不闻其香”描述的是()
2013年11月,某县团委就在全县范围内开展青少年读书活动的情况,写了《关于在全县开展青少年读书活动的报告》,报告回顾了读书活动的情况,举出典型案例和数据说明了读书活动的效果,报告最后还写到:“开展青少年读书活动的一个重要方面,是推荐合适的书目,为此,我们
项目章程的主要内容包括_____________。①项目目的或批准项目的理由②项目的主要风险③项目的总体预算④项目总体里程碑进度计划⑤项目范围说明书⑥项目成本基准
A、Buildinghouses.B、Runningagym.C、Doingexercise.D、Travelling.C女士问男士业余时间干什么,男士说他业余时间去健身中心。因此,男士业余时间会锻炼身体。
Kitchendutiesmayhavetraditionallybeenviewedaswomen’swork,butnotattheWhiteHouse.Untilnow:CristetaComerfordhas
最新回复
(
0
)