刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

请填写应填入(n)处的字句。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

(1)Document*    (2)aDocument    (3)!canOpenDocument(docName)

    (4)Document*    (5)doCreateDocument()  (6)adoc->open(docName)

    (7)adoc->read(docName)  (8)addDocument(adoc)

解析:

本题考查了C++语言的应用能力和模板方法设计模式。

对于第一个空(1),考查了C++标准库中Vector模板类的使用。Vector模板类可以存储任意类型的数据,此处需要填入的是能够加入到文档对象集合中的元素类型。根据后面的代码,我们知道这个集合中存储的是各个文档的指针,因此空(1)处的类型应该为Document*。

对于第二个空(2),根据题目描述和代码逻辑,需要将传入的文档指针加入到文档对象集合中,因此应该填写aDocument。

接下来的空(3)到空(8),都是关于Application类的openDocument方法的实现。根据题目给出的步骤和代码逻辑,空(3)处需要判断能否打开文档,调用的是父类自己的方法canOpenDocument。如果无法打开文档,就返回错误信息并结束方法。如果文档可以打开,那么就进行接下来的步骤。

空(4)和空(5)是创建文档对象的过程,分别定义了文档对象的指针和创建文档对象的方法。这里需要调用父类的抽象方法doCreateDocument(),由子类来实现具体的创建过程。

接下来的空(6)、空(7)和空(8),分别是通过文档对象打开文档、读取文档信息和将文档对象加入到文档对象集合中的操作。这些操作都是在父类中定义的模板方法中完成的,具体的实现细节会在子类中完成。因此,空(6)处填写adoc->open(docName),空(7)处填写adoc->read(docName),空(8)处填写addDocument(adoc)。

创作类型:
原创

本文链接:请填写应填入(n)处的字句。

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share