首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和c++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—7所示: 【c++代码】 #include #include #include
阅读下列说明和c++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—7所示: 【c++代码】 #include #include #include
admin
2010-05-08
68
问题
阅读下列说明和c++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—7所示:
【c++代码】
#include<1ist>
#include
#include
using namespace std;
class AbstractFile{
protected:
string name;//文件或目录名称
public:
void printName(){cout<
virtual void addChild(AbstractFile*file)=0 ; //给一个目录增加子目录或文件
virtual void removeChild(AbstractFile*file)=O; //删除一个目录的子目录或文件
virtual list
*getChildren()=0; //获得一个目录的子目录或文件
};
class File:public AbstractFile{
public:
File(string name){ (1) =name;)
void addChild(AbstractFile*file){return ;)
void removeChiid(AbstractFile*file){return;}(2) getChildren(){return ( 3 ) ;}
};
class Folder:public AbstractFile{
private:
list
childList; //存储子目录或文件
public:
Folder(string name){ (4) =name;}
void addChild(AbstractFile*file){childList.push back(file);}
void removeChiid(AbstractFile*file)(chiidList.remove(file);}
list
*getChildren(){return (5) ;)
};
voidmain(){
//构造一个树形的文件/目录结构
AbstractFile*rootFolder=new Folder(“C:\\”);
AbstractFile*compositeFolder=flew Folder(”composite”);
AbstractFile*windowsFolder=new Folder(”windows”);
AbstractFile*file=new File(”TestComposite.java”);
rootFolder->addChild(compositeFolder);
rootFolder->addChild (windowsFolder);
compositeFolder->addChiid(file);
)
选项
答案
(1)this一>name(2)list
*(3)NULL(4)this->name(5)&childList
解析
Composite模式定义:将对象以树型结构组织起来,以达成“部分一整体”的层次结构,使得客户端对单个对象和组合对象的使用具有一致性。Composite比较容易理解,想到Composite就应该想到树形结构图。组合体内这些对象都有共同接口,当组合体一个对象的方法被调用执行时,Composite将遍历(Iterator)整个树形结构,寻找同样包含这个方法的对象并实现调用执行。AbstractFile为一个抽象文件类,其作用主要是实现对文件或者文件夹的抽象。文件类File继承自AbstractFile。File(stringname)为File类的一个属性,用于获取文件名称。Addchild方法用来给一个目录增加子目录或文件。Removechild方法用于删除一个目录的子目录或文件。Getchildren方法用于获取一个目录或文件,所以返回值类型应该是一个列表形式的AbstractFile,但文件本身不包括子目录,故返回NULL。Fold类表示一个文件夹,属性Fold.er用于获取文件夹名称,Getchildren方法返回值应为List型的AbstractFile对象指针。
转载请注明原文地址:https://www.kaotiyun.com/show/kSDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
假设某公司营销系统有营销点关系S(营销点,负责人姓名,联系方式)、商品关系P(商品名,条形码,型号,产地,数量,价格),其中,营销点唯一标识S中的每一个元组。每个营销点可以销售多种商品,每一种商品可以由不同的营销点销售。关系S和P的主键分别为(15),S
假设某公司营销系统有营销点关系S(营销点,负责人姓名,联系方式)、商品关系P(商品名,条形码,型号,产地,数量,价格),其中,营销点唯一标识S中的每一个元组。每个营销点可以销售多种商品,每一种商品可以由不同的营销点销售。关系S和P的主键分别为(15),S
《GB/T18905软件工程产品评价》中确定的通用评价过程包括四个方面,其中有关“规定评价”部分包含的内容有(67)。
某企业职工关系EMP(E_no,E_name,DEPT,E_addr,E_tel)中的属性分别表示职工号、姓名、部门、地址和电话;经费关系FUNDS(E_no,E_limit,E_used)中的属性分别表示职工号、总经费金额和已花费金额。若要查询部门为“开
某企业职工关系EMP(E_no,E_name,DEPT,E_addr,E_tel)中的属性分别表示职工号、姓名、部门、地址和电话;经费关系FUNDS(E_no,E_limit,E_used)中的属性分别表示职工号、总经费金额和已花费金额。若要查询部门为“开
一个程序的控制流图中有5个节点、9条边,在测试用例数最少的情况,确保程序中每个可执行语句至少执行一次所需测试用例数的上限是______。
假设关系R1和R2如下图所示:若进行R1R2运算,则结果集分别为(1)元关系,共有(2)个元组。(1)
根据输出对输入的依赖关系设计测试用例的黑盒测试方法是________。
计算机采用分级存储体系的主要目的是为了解决()的问题。
随机试题
A地甲公司与B地乙公司签订一份书面购销合同,甲公司向乙公司购买冰箱200台,每台价格是1500元。双方约定由乙公司代办托运,甲公司在收到货物后的10日内付款,合同的违约金为合同价款的10%,并且约定了因合同发生纠纷由合同签订地C地的法院管辖。但是,在合同签
实验法
压力
具有双向调节子宫平滑肌作用的中药是()。
A、青霉素B、氯霉素C、两性霉素BD、克林霉素E、克霉唑仅局部用于治疗浅部真菌病和皮肤黏膜念珠菌感染的是()。
下列属于对肾功有影响的含生物碱类重要的是
企业所取得的交易性金融资产初始成本中应该包括在取得时已宣告但尚未发放的现金股利或已到付息期但尚未领取的债券利息。()
在我国国民收入分配过程中,社会消费基金由()构成。
2015年2月,张某通过股票交易账户在股票二级市场购进甲上市公司股票100000股,成交价格为每股12元。同年4月因甲上市公司进行2013年度利润分配取得35000元分红所得。同年7月张某以每股12.8元的价格将股票全部转让。下列关于张某纳税事项的表述中,
据中消协和全国30个省、自治区、直辖市消费者协会(委员会、下同)的统计汇总,2008年共受理消费者投诉638477件,比2007年下降2.8%,解决607423件,为消费者挽回经济损失66168万元,比2007年下降21.2%,其中因经营者有欺诈行为得到加
最新回复
(
0
)