首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明、图和C++代码,填补C++代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。 【说明】 已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节约
阅读以下说明、图和C++代码,填补C++代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。 【说明】 已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节约
admin
2013-07-03
53
问题
阅读以下说明、图和C++代码,填补C++代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。
【说明】
已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节约
能源,通过控制各种电源,将可关闭的房灯、计算机显示器等在夜间关闭。
为了实现上述需求,设计了如下图所示的类图,并用下面的C++代码加以实现。
【C++代码】
#include
#include
using namespace std;
class Asset{ /*通用资产,基类*/
public:virtual~Asset(){};
};
class PowerSwitchable{ /*抽象基类,可在夜间关闭电源的物体接口*/
public:virtual void powerDown()=0; /*powerDown()函数接口*/
virtual void powerUP()=0; /*powerUp()函数接口*/
};
class computerAsset:public Asset{ /*计算机资产*/
protected:int deskNumber;
public:
computerAsset(int desNumber){this->deskNumber=deskNumber;}
};
class computerCPU
(1)
/*计算机主机,永不关闭*/
public:
computerCPU(int desNumber):ComputerAsset(desNumber){}
};
class computerMonitor
(2)
{ /*计算机显示器*/
public:
computerMonitor(int roomNumber):omputerAsset(roomNumber),PowerSwitchable(){}
~computerMonitor(){}
void powerDown(){……/*关电源,代码省略*/}
void powerUp(){……/*开电源,代码省略*/}
};
/*BuildingAsset、BuildingLight、EmergencyLight和RoomLiggts代码省略*/
class BuldingManagement{
private:
Asset*things[24];int numltems;
public:
void goodnight(){ /*值班员定时“关闭”时调用,关闭可关闭的电源*/
for(int i=0;i<numltems;i++){
(3)
ps=dynamic_cast
(things
);
if(ps!=0)
ps->powerDown();
}
}
/*goodMorning()与goodNight()类似,依次调用powerUp(),实现省略*/
void add(Asset*thing){ /*为建筑添加资产*/
yhings[
(4)
]=thing;
}
};
int main(){
BuildingManagement*b1=
(5)
BuildingManagement();
b1->add(new RoomLights(101)); //101房间的控制灯
b1->add(new Emergencynight(i01)); //101房间的应急灯
b1->add(new ComputerCPU(10104)); //101房间4号桌上的计算机
b1->add(new ComputerMonitor(10104)); //101房间4号桌上的计算机显示器
b1->goodNight();
Delete b1;
}
选项
答案
(1):public ComputerAsset (2):public ComputerAsset,public PowerSwitchable (3)PowerSwitchable* (4)numItems++ (5)new
解析
本题考查考生使用C++语言进行而向对象程序设计的能力。首先要看懂所给类图中类与类之间的关系,然后阅读程序以实现类图中表示的各个要素。
(1)处考查类cornputerCPU。从类图中可以看出,类computerCPU表示计算机主机,其继承了类ComputerAs-set。computerCPU是CoreputerAsset的子类,并且在com-puterCPU的构造函数中,调用了父类ComputerAsset的构造函数,因此继承的权限为public。因此,(1)处应填入:public ConlputerAsset。
(2)处考查类computerMonitor。从类图中可以看出,类computerMonitor表示计算机显示器,其继承了类Com-puterAsset。computerCPU是ComputerAsset的子类,而且均是可关闭的,具有开关电源的相同接口,均继承了类PowerSwitchable,并且在computerCPU的构造函数中,调用了其父类的构造函数,因此继承的权限为public。两个父类的继承格式为:public父类1,public父类2。因此,(2)处应填入:public ComputerAsset,public POwerSwitchable。
系统中有各类资产,在类BuldingManagement中使用Asset通用资产类型数组,用add函数依次为建筑添加资产。由于add函数中对数组添加元素只有一条语句,需要在下标中完成指明当前添加资产元素的下标,并将下标后移。在goodNight函数中对可关闭的资产进行控制,需要判定其是否可关闭,也就是资产是否为类PowerSwitchable的子类。通过动态类型转换进行判定,如果资产类型是PowerSwitchable的子类,则转换后的类型调用相应接口,并绑定到具体对象,执行对象的关闭电源行为。
(3)处实现动态类型转换为抽象类,因此应填入PowerSwitchable*。
(4)处指明当前添加资产元素的下标,并将下标后移,应填入numltems十十。
类BuldingManagement中没有定义构造函数,编译器会自动生成一个默认的构造函数,采用new关键字进行对象创建。在使用完之后,通过delete进行释放。
(5)处补充通过使用编泽器生成的默认的构造函数进行对象创建,应填入new。
转载请注明原文地址:https://kaotiyun.com/show/qnjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Word2010中,要对设定好纸张大小的文档进行每页行数和每行字数调整,可通过页面设置对话框中的()命令进行设置。
在Word2007中,若用户需要将一篇文章中的字符串“Internet”全部替换为字符串“因特网”,则可以在编辑菜单中选择()命令。
假设100个数据的平均值为82.31,其中有10个数据又发生了如下增减变化:+3.52,+2.87,-4.13,+5.34,-2.87,+2.50,-3.52,+4.23,-5.04,+0.10,则新的平均值变为(26)。
在Windows7中,若删除桌面上某个应用程序的快捷方式图标,则(31)。
双击某个非可执行程序的文件名将(24)。
在Excel2010的A1单元格中输入函数“=IF(1<>2,1,2)”,按回车键后,A1单元格中的值为________________。
______不属于企业信息系统存在的问题。
计算机每次启动时自动运行的计算机病毒称为______病毒。
删除Windows中某个应用程序的快捷方式,意味着(39)。
用计算机处理信息时,常对许多信息采用适当的编码。例如职工编码、商品编码、性别编码、文化程度编码等。编码有许多好处,但不包括(66)。
随机试题
下列与十进制数10.5相等的是
患者,男,65岁。因阵发性腹部绞痛5小时入院,腹痛发作时自觉有腹内气块窜动感,伴呕吐胃内容物多次,肛门有少量排气。腹部X线显示肠黏膜皱襞呈“鱼肋骨刺”状改变。该患者可能发生
心肌梗死的病人哪种同工酶明显升高
用尿糖定性试验检查糖尿病病人和正常成年人各500名,结果糖尿病病人中有300例阳性,200例阴性,正常成年人有50例阳性,450例阴性。尿糖定性试验筛检糖尿病的灵敏度为
集料的含泥量是指集料中粒径小于或等于()的尘宵、淤泥、粘土的总含量。
依据委托监理合同示范文本,当委托人严重拖欠监理酬金而又未提出任何书面解释时,监理人可()。
下列选项在金融市场中,既是金融市场中重要的交易主体,又是监管机构之一的是()。
划分就是把一个概念所反映的对象分为几小类来眀确概念外延的逻辑方法,也可以说是把一个外延较大的属概念分成几个并列的种概念的逻辑方法。分解是在思维中将一个对象分成几个部分,反映部分的概念和反映整体的概念之间不是种属关系。根据上述定义,下列属于正确划分的是:
在各类计算机操作系统中,分时系统是一种()。
Shortstoriesareduearevival.Inrecentyears,therehavebeencritically(1)_____collectionsbyAmericanwriterssuchasLyd
最新回复
(
0
)