2008年下半年软件设计师下午试卷[17]

软件设计师 责任编辑:mikewood 2008-12-21

添加老师微信

备考咨询

加我微信

摘要:已知Application类中的openDocument方法采用了模板方法(TemplateMethod)设计模式,该方法定义了打开文档的每一个主要步骤,如下所示:1.首先检查文档是否能够被打开,若不能打开,则给出出错信息并返回;2.创建文档对象;3.通过文档对象打开文档;4.通过文档对象读取文档信息;5.将文档对象加入到Application的文档对象集

已知Application类中的openDocument方法采用了模板方法(Template Method)设计模式,该方法定义了打开文档的每一个主要步骤,如下所示:

1.首先检查文档是否能够被打开,若不能打开,则给出出错信息并返回;

2.创建文档对象;

3.通过文档对象打开文档;

4.通过文档对象读取文档信息;

5.将文档对象加入到Application的文档对象集合中。

【C++代码】

#include <iostream>
#include <vector>
using namespace std;
class Document{
 public:
 void save(){ /*存储文档数据,此处代码省略*/ }
 void open(string docName){  /* 打开文档,此处代码省略  */ }
 void close(){  /* 关闭文档,此处代码省略*/  }
 virtual void read(string docName) = 0;
};
class Appplication{
 private:
 vector < (1) >  docs;  /*文档对象集合*/
 public:
 bool canOpenDocument(string docName){
  /*判断是否可以打开指定文档,返回真值时表示可以打开,返回假值表示不可打开,此处代码省略*/
 }
 void addDocument(Document * aDocument){
  /*将文档对象添加到文档对象集合中*/
  docs.push_back( (2)  );
 }
 virtual Document * doCreateDocument() = 0; /*创建一个文档对象*/
 void openDocument(string docName){ /*打开文档*/
  if ( (3)  ){
 cout << "文档无法打开 !" << endl;
 return;
  }
 (4)  adoc = (5)  ;
 (6) ;
 (7) ;
 (8) ;
 }
}; [答案讨论]

[1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]  [10]  [11]  [12]  [13]  [14]  [15]  [16]  [17]  [18]  [19]  

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

软考备考资料免费领取

去领取

!
咨询在线老师!