Abstract Factory(工厂模式)-创建型模式

代码:

class AbstractProduct{

public:

    virtual void ShowProduct()= 0;

};

class ProductA : public AbstractProduct{

public:

    void ShowProduct()override{

cout<<"I am Product A"<

}

};

class ProductB:public AbstractProduct{

public:

    void ShowProduct()override{

cout<<"I am Product B"<

}

};

class Factory{

public:

    AbstractProduct *createProduct(int index){

switch (index)

{

case 1:

                return new ProductA();

case 2:

                return new ProductB();

}

}

};

int main()

{

Factory f;

f.createProduct(1)->ShowProduct();

f.createProduct(2)->ShowProduct();

}

你可能感兴趣的:(Abstract Factory(工厂模式)-创建型模式)