阅读下列说明C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16.3所示。

现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16—5所示的类图。
【正确答案】正确答案:(1)abstract(2)StringgetDescription(3)abstractintcost() (4)Beveragebeverage(5)beverage(6)beverage
【答案解析】解析:由类图可知,Beverage是基类,Espresso、DarkRoast、CondimentDecorator是Beverage的派生类,Mocha、Whip又是CondimentDecorator的派生类。 (1)处应填/kdescfiption[~访问控制类型,可能为private或protected。在Beverage~派生类Espressol~%)]-始化函数中直接使用]"description,由此可知,在基类中,description[~访问控制类型为protected。如果为priVate,则在派生中不能使用。 在基类中先后动态建立了一个DarkRoast对象、Mocha对象和Whip对象,调用初始化函数,并输出。在Mocha类和Whip类中分别调用了基类的getDescription()cost()。