软件设计师下午考试科目为案例分析,考试题型为主观题,4道必答题,2道(5、6题)选答题,考试时长2个半小时,共75分。为帮助广大软考中级软件设计师考生更好备考,信管网特整理汇总了软件设计师部分真题、答案及解析供考生查阅,并提供免费在线模拟答题、历年真题免费下载等服务,了解软件设计师更多备考信息请关注信管网。
相关推荐:
免费练习:软件设计师考试题库(模拟试题、章节练习、每日一练)
阅读以下说明和c++代码,将应填入 (n) 处。
[说明]
在一公文处理系统中,开发者定义了一个公文类officedoc,其中定义了公文具有的属性和处理公文的相应方法。当公文的内容或状态发生变化时,关注此officedoc类对象的相应的docexplorer对象都要更新其自身的状态。一个officedoc对象能够关联一组 docexplorer对象。当officedoc对象的内容或状态发生变化时,所有与之相关联的 docexplorcr对象都将得到通知,这种应用被称为观察者模式。以下代码写在一个c++源文件中,能够正确编译通过。
[c++代码]
#include
const obs_maxnum=20;//最多与officedoc对象相关联的docexplorer对象的个数
(1) ;
class docexplorer{ //关注officedoc公文对象的类
public:
docexplorer( (2) *doc); //构造函数
(3) void update(officedoc *doc)=0;//更新自身状态的函数
//其他相关属性和方法省略
};
class officedoc{ //公文类
private:
docexplorer *myobs[obs_maxnum];
//关注此公文类的docexplorer类对象指针数组
int index; //与officedoc对象关联的docexplorer对象的个数
public:
officedoe()
index=0;
}
void attach(docexplorer *o){
//将一doeexplorer对象与officedoe对象相关联
if(index >=obs_maxnum ||o=null)return;
for(int loop=0; loop
if(myobs[loop]==o) return;
myobs[index]=o;
index++;
}
void detaeh(docexplorer *o){
//接触某doeexplorer对象与officedoc对象的关联
if(0==null) return;
for(int loop=0; loop
if(myobs[loop]==o){
if(loop<=index-2)myobs[loop]=myobs[index-1];
myobs[index-1]=null;
index--;
break;
}
}
}
private:
void notifyobs(){ //通知所有的docexplorer对象更改自身状态
for(int loop=0; loop
myobs[loop]-> (4) ; //docexplorer对象更新自身状态
}
}
//其他公文类的相关属性和方法
};
docexplorer::docexplorer(officedoc *doc){//docexplorer 类对象的构造函数
doc-> (5) ; //将此docexplorer对象与doc对象相关联
}
信管网参考答案:
(1) class OfficeDoc
(2) OfficeDoc
(3) virtual
(4) update(this)
(5) attach(this)
温馨提示:因考试政策、内容不断变化与调整,信管网网站提供的以上信息仅供参考,如有异议,请以权威部门公布的内容为准!
信管网致力于为广大信管从业人员、爱好者、大学生提供专业、高质量的课程和服务,解决其考试证书、技能提升和就业的需求。
信管网软考课程由信管网依托10年专业软考教研倾力打造,官方教材参编作者和资深讲师坐镇,通过深研历年考试出题规律与考试大纲,深挖核心知识与高频考点,为学员考试保驾护航。面授、直播&录播,多种班型灵活学习,满足不同学员考证需求,降低课程学习难度,使学习效果事半功倍。
发表评论 查看完整评论 | |