starbuzz.cpp
来自「深入浅出设计模式(书配套c++源代码)。包含20个设计模式的c++实现。」· C++ 代码 · 共 40 行
CPP
40 行
#include "Starbuzz.hpp"
using namespace HeadFirstDesignPatterns::Decorator;
int main( int argc, char* argv[] ) {
Beverage* beverage = new Espresso();
std::cout.setf( std::ios::showpoint);
std::cout.precision(3);
std::cout << beverage->getDescription()
<< " $"
<< beverage->cost()
<< std::endl;
Beverage* beverage2 = new DarkRoast();
beverage2 = new Mocha(beverage2);
beverage2 = new Mocha(beverage2);
beverage2 = new Whip(beverage2);
std::cout << beverage2->getDescription()
<< " $"
<< beverage2->cost()
<< std::endl;
Beverage* beverage3 = new HouseBlend();
beverage3 = new Soy(beverage3);
beverage3 = new Mocha(beverage3);
beverage3 = new Whip(beverage3);
std::cout << beverage3->getDescription()
<< " $"
<< beverage3->cost()
<< std::endl;
delete beverage3;
delete beverage2;
delete beverage;
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?