首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图5-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的
阅读下列说明和C++代码,将应填入(n)处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图5-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的
admin
2012-03-21
19
问题
阅读下列说明和C++代码,将应填入(n)处的字句写在对应栏内。
[说明]
某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图5-1所示。
现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的餐饮形式,得到如图5-2所示的类图。其中MenuComponent为抽象类,定义了添加(add)新菜单和打印饭店所有菜单信息(print)的方法接口。类Menu表示饭店提供的每种餐饮形式的菜单,如煎饼屋菜单、咖啡屋菜单等。每种菜单中都可以添加子菜单,例如图5-1中的甜点菜单。类MenuItem表示菜单中的菜式。
[C++代码]
#include<iostream>
#include<list>
#include<string>
using namespace std;
clas s MenuComponent {
protected: string name;
public:
MenuComponent(string name) {this->name=name; }
String getName(){return name;}
(1) : //添加新菜单
virtual void print()=0; //打印菜单信息
};
clasS MenuItem: public MenuComponent {
private: double price;
public:
Menultem(string name, double price): MenuComponent(name){this->price=price;}
double getPrice(){return price;}
void add(MenuComponent* menuComponent) {return; } //添加新菜单
void print() { cout<<" "<<getName()<<", "<<getPrice()<<end1;}
};
clasS Menu: public MenuComponent {
private: list< (2) > menuComponents;
pubiic:
Menu(string name): MenuC0mponent(name){}
void add(MenuComponent* menuComponent) //添加新菜单
{ (3) ; }
void print(){
cout<<"\n"<<getName()<<"\n-------------------------"<<end1;
std::list<MenuC0mponent*>::iterator iter;
for(iter=menuComponents.begin(); iter!=menuComponents. end(); iter++)
(4) ->print();
}
};
void main(){
MenuComponent* allMenus=new Menu("ALL MENUS");
MenuComponent* dinerMenu=new Menu("DINER MENU");
…//创建更多的Menu对象,此处代码省略
allMenus->add(dinerMenu); //将dinerMenu添加到餐厅菜单中
…//为餐厅增加更多的菜单,此处代码省略
(5) ->print(); //打印饭店所有菜单的信息
}
(3)
选项
答案
menuComponents.push_back(menuComponent)
解析
转载请注明原文地址:https://jikaoti.com/ti/73i7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
在开发一个字处理软件时,首先快速发布了一个提供基本文件管理、编辑和文档生成功能的版本,接着发布提供更完善的编辑和文档生成功能的版本,最后发布提供拼写和语法检查功能的版本,这里采用了()过程模型。
软件内部/外部质量模型中,以下(66)不是功能性包括的子特性。
一个Web信息系统所需要进行的测试包括____________。①功能测试②性能测试③可用性测试④客户端兼容性测试⑤安全性测试
程序质量评审通常是从开发者的角度进行评审,其内容不包括____________。
测试成本控制的目标是使测试开发成本、测试实施成本和测试维护成本最小化,以下理解正确的是______。A.测试准备成本属于测试实施成本B.可以通过加强软件测试的配置管理来降低测试维护成本C.测试设计成本控制的目标是尽可能地减少测试总执行时间和所需的测试
软件系统的安全性是信息安全的一个重要组成部分,针对程序和数据的安全性测试与评估是软件安全性测试的重要内容,()不属于安全性测试与评估的基本内容。
甲、乙软件公司于2013年9月12日就其财务软件产品分别申请“大堂”和“大唐”商标注册。两财务软件相似,且经协商双方均不同意放弃使用其申请注册的商标标识。此情形下,()获准注册。
静态图像压缩标准JPEG2000中使用的是(60)算法。
下图是①设计模式的类图,该设计模式的目的是②,图中,Abstraction和RefinedAbstraction之间是③关系,Abstraction和Implementor之间是④关系。④处应填入?
随机试题
方程y’-ex-y=0的通解为______________.
要使全口义齿前牙排列美观,需注意以下几个方面,除了
根据《公务员法》的规定,下列说法正确的是:()
【2007年真题】根据我国现行规定,对某些投资回报率稳定、收益可靠的基础设施、基础产业投资项目以及经济效益好的竞争性投资项目,经国务院批准,可以通过()方式筹措资本金。
热拌沥青混合料路面压实成型与接缝,说法正确的有()。
下列不属于防排烟系统中活动挡烟垂壁的调试的是()。
材料:有个开发商路过一个村庄,觉得地不错,想开发一个绿色、高科技、高回报的项目。村干部也觉得不错。于是要征用农民土地,征用的土地按照外地征地的惯例给农民补偿,但是农民不了解项目,且害怕自己的利益受损害,于是不愿意,村干部决定强制执行,于是村民上访。有些
56789+67895+78956+89567+95678结果是多少?()
熬骨头汤时,为提高骨头中钙质的溶解度,可加入少量()。
Thesuperstarturneddowninterviewrequests,sayinghepreferredtokeepalow_______.
最新回复
(
0
)