首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图5-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图5-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知
admin
2006-03-15
68
问题
阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图5-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供的接口不能被系统直接使用。代码5-1既使用了XCircle又遵循了Shape规定的接口,既避免了从头,开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码5-2根据用户指定的参数生成特定的图元实例,并对之进行显示操作。
绘图系统定义的接口与XCircle提供的显示接口及其功能如下表所示:
【代码5-1】
class Circle:public (1) {
pfivme:
(2) m_circle;
public:
void display(){
m_circle. (3);
}
};
【代码5-2】
class Factory{
public:
(4) getShapeInstance (int type){ //生成特定类实例
switch (type){
case 0:rcturn new Point;
Case l:return new Rectangle;
case 2: return new Line;
case 3: return new Circle;
default: return NULL;
} void main (int argo, char *argv[]) {
if (argc!=2) {
cout << "error parameters !" << endl; return; inttype=atoi (argv[1]) ;
Factory factory;
Shape *s;
s = factory. (5):
if (s==NULL) {
cout << "Error get the instance !" << endl;
return;
}
s->display () ;
(6);
return;
选项
答案
(1)Shape (2)XCircle (3)displayIt() (4)Shape* (5)getShapeInstance(type) (6)delete s
解析
题目中明确要求Circle具有Shape接口,所以,第1空应填上Shape。因为要重用 XCircle类而不用从头开发一个新的Circle类,所以,凡是Circle类实现Shape的接口时都应调用相应的XCircle类提供的方法。因此第2空应填上Xcircle,第3空应填上 displayIt()。阅读主程序,第5空调用factory对象的方法,而类Factory类只有一个方法为getShapeInstanee,所以第5空应填入getShapeInstance,参数为用户运行程序时指定的参数,程序中为type参数,表明需要生成哪一种类型的对象。同样,因为s是Shape*类型,所以,getShapeInstance(type)的返回值类型为shape*,因此第4空应填入Shape*;程序退出前需要释放指针s所占用的内存空间,所以第6空应填写delete s。
转载请注明原文地址:https://www.kaotiyun.com/show/7yDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读下列说明,回答问题,将解答写在答题纸的对应栏内。某汽车维修公司的工时计算模块每天定时根据系统登记的维修信息统计维修工的工时工资。维修工分为学徒、普通维修工和高级维修工三种,三种维修工有不同的时薪标准。图4一1是该模块的类图,图中属性和操作前的“+”
阅读下列C程序,回答问题,将解答填入答题纸的对应栏内。【C程序】intisbinary(constvoid*buf,constsizetbuf—fen){sizetsuspiciousbytes=0;sizettotal—by
v模型指出,(47)对程序设计进行验证,(48)对系统设计进行验证,(49)应当追溯到用户需求说明。
在UML提供的图中,(36)用于描述系统与外部系统及用户之间的交互;(37)用于按时间顺序描述对象间的交互。
在一个单CPU的计算机系统中,有两台外部设备R1、R2和三个进程P1、P2、P3。系统采用可剥夺式优先级的进程调度方案,且所有进程可以并行使用I/O设备,三个进程的优先级、使用设备的先后顺序和占用设备时间如下表所示:假设操作系统的开销忽略不计,三个进程
在GB/T 17544中,软件包质量要求包括三部分,即产品描述要求、(53)、程序和数据要求。
对于业务流清晰的系统可以利用(57)贯穿整个测试用例设计过程,在用例中综合使用各种测试方法,对于参数配置类的软件,要用(58)选择较少的组合方式达到最佳效果,如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用(59)和判定表驱动法。
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(30)设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如 Oracle、SQL Server和DB2 UDB等)的功能,这些数
以下各项中,(51)属于需求说明书的评测内容。①系统定义的目标是否与用户的要求一致②设计的约束条件或限制条件是否符合实际③是否考虑过软件需求的其他方案④软件的行为与它必须处理的信息、必须完成的功能是否一致
在计算机体系结构中,CPU内部包括程序计数器PC、存储器数据寄存器MDR、指令寄存器IR和存储器地址寄存器MAR等。若CPU要执行的指令为:MOV R0,#100(即将数值100传送到寄存器R0中),则CPU首先要完成的操作是(1)。
随机试题
诸子百家中与儒家并称显学的是【】
求过点M0(-1,2,1)且与两平面π1:x+y-2z=1和π2:x+2y—z=1平行的直线方程.
患者,女,13岁,颈前区,舌骨下方出现囊性肿块,边界清楚,光滑,伸舌时上下移动。最可能的诊断是
一般物品的寿命有限,可以大量重复生产,其价值通常随着时间的流逝而降低,故有折旧。而土地由于具有不可毁灭性,不能再生产,其价格通常随着时间的流逝而自然升高,不仅无折旧,而且有增值,当然也有例外的情况,如一座矿山城镇,矿物被开采完后如果没有其他产业兴起,则地价
公共建筑门厅出入口部分的设计,主要依据是()。
城市规划的作用体现在以下几个方面,但不包括()。
磁力起动器的组成是由()。
(1)宏观调控(2)通货膨胀(3)投资减少(4)物价回落(5)经济过热
以下各存储器中,存取速度最快的一种是()。
StellaWemightmarvelattheprogressmadeineveryfieldofstudy,butthemethodsoftestingaperson’sknowledgeandabi
最新回复
(
0
)