首页 > 代码库 > 抽象工厂模式

抽象工厂模式

class IProduct
{
public:
    virtual void prodMethod() = 0;
};

class Product: public IProduct
{
    virtual void prodMethod()
    {
        cout<<"produmethod"<<endl;
    }
};
class IFactory
{
public:
    virtual IProduct * CreateProduct() = 0;
};

class Factory: public IFactory
{
public:
    virtual IProduct * CreateProduct()
    {
        return new Product();
    }
};

int main()
{
    IFactory * pFac = new Factory();
    IProduct * pPro = pFac->CreateProduct();
    pPro->prodMethod();    
    return 0;
}

抽象工厂模式