信管网每日一练

导航

软件设计师案例分析每日一练试题(2021/10/12)

2021年10月13日来源:信管网 作者:cnitpm

软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4

往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html

软件设计师案例分析每日一练试题(2021/10/12)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2021/10/12

点击查看:更多软件设计师习题与指导

软件设计师案例分析每日一练试题内容(2021/10/12)

试题五
阅读以下说明和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;



信管网试题答案与解析:www.cnitpm.com/st/2452626203.html

信管网考友试题答案分享:

信管网试题答案与解析:www.cnitpm.com/st/2452626203.html

温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

分享至:
请使用浏览器的分享功能,把好文章分享给更多的人

信管网 - 信息系统项目管理专业网站

下载APP-在线学习

培训课程

0元畅享

考试题库

免费资料

APP下载