abstract_factory_pattern::AbstractFactory

class AbstractFactory

Abstract Factory interface for creating families of related products. Declares methods for creating each type of product (Product A and Product B).

Subclassed by abstract_factory_pattern::ConcreteFactory1, abstract_factory_pattern::ConcreteFactory2

Public Functions

virtual std::unique_ptr<AbstractProductA> createProductA() const = 0

Creates a product of type A.

Returns:

A unique pointer to a Product A instance.

virtual std::unique_ptr<AbstractProductB> createProductB() const = 0

Creates a product of type B.

Returns:

A unique pointer to a Product B instance.