软考真题
第5题

试题五(共15分)

阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

层叠买单是留口风格的软件系统中经常采用的一种系统功能组织方式。层叠菜单(如

到5-1示例)中包含的可能是一个菜单项(直接对应某个功能),也可能是一个子菜单。现采用组合(Compasite)设计模式实现层叠菜单,得到如图5-2所示的类图。

【C++代码】

#include <list>

#include <iostream>

#include <string>

using namespace std;

class MenuComponent{//构成层叠菜单的元素

( ) :

string name;  //菜单项或子菜单名称

public:

void printMenu0 { cout < <name;}

( )

virtual void removeMenuElement (MenuComponent*element) =0;

( )

}

class Menultem:public MenuComponent {

public:

Menultem (string name) { this->name-name;}

void addMenuElement (MenuComponent*element) { retum;}

void removeMenuElement (MenuComponent*element) {retum;}

list <MenuComponent*> *getElemento { retum NULL; }

 }:

class Menu:public MenuComponent{

private:

( )

public:

Menu (string name) {this->name = name;}

void addMenuElement (MenuComponent*element) |elementList.push_back {element) ; }

void removeMenuElement (MenuComponent*element) {elementList.remove{element);}

list <MenuComponent*> *getElement0 { return&elementList;}

};

int main0( ) {

MenuComponent*mainMenu = new Menu ("Insert") ;

MenuComponent*subMenu=new Menu ("Chart") ;

MenuComponent*element=new Menultem ("On This Sheet") ;

( )

subMenu-> addMenuElement (element) ;

returm 0;

}

������ ��������������� 2021��� ��������� ������������ ������
正确答案:
你的答案:
请先在app激活
知识点:
未分类
试卷:
2021年 上半年 下午试卷 案例

笔记

考试了喔

请先在app激活

2021-10-21


答题卡
加油
纠错
得分:0