问答题
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
[说明]
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关按钮,对应着一个不同的灯。利用该遥控器能够统一控制房间中该厂商所有品牌灯具的开关,现采用Command(命令)模式实现该遥控器的软件部分,Command模式的类图如下图所示。
【正确答案】
【答案解析】void execute(){}
light->on()
light->off()
onCommands[slot]
offCommands[slot]
onCommands[slot]->execute()
offCommands[slot]->execute()
[解析] 本题考查Command命令模式的概念及应用,并用C++语言实现。Command命令模式是一种对象行为模式。它主要解决的问题是,在软件构建过程中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”的问题,将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。