This repository has been archived on 2022-11-09. You can view files and clone it, but cannot push or open issues or pull requests.
patterns-old/lesson_4/PepperoniPizza.hpp

35 lines
815 B
C++
Raw Permalink Normal View History

2021-11-03 15:35:58 +00:00
/*
* PepperoniPizza.hpp
*
* Created on: 3 нояб. 2021 г.
* Author: alexander
*/
#pragma once
#include "Pizza.hpp"
#include "PizzaIngredientFactory.hpp"
class PepperoniPizza: public Pizza
{
public:
PizzaIngredientFactory *ingredientFactory;
PepperoniPizza(PizzaIngredientFactory *ingredientFactory) : ingredientFactory(ingredientFactory) {}
void prepare() override
{
std::cout << "Preparing " << getName() << std::endl;
setDough(ingredientFactory->createDough());
setSauce(ingredientFactory->createSauce());
setCheese(ingredientFactory->createCheese());
setVeggies(ingredientFactory->createVeggies());
setPepperoni(ingredientFactory->createPepperoni());
}
~PepperoniPizza()
{
delete ingredientFactory;
}
};