抽象工厂模式

来源:互联网 发布:免费听书软件下载 编辑:程序博客网 时间:2024/04/30 21:50

抽象工厂模式是一种创建型的模式,目的是创建一组相关或者相互依赖的对象:

c++代码:

<span style="font-size:18px;">class AbstractProduct{public:AbstractProduct(string name):mName(name){}virtual ~AbstractProduct()=0;virtual void show()=0;protected:string mName;};AbstractProduct::~AbstractProduct(){}class Iphone:public AbstractProduct{public:Iphone(string name):AbstractProduct(name){}void show(){cout<<mName<<"  creat by apple"<<endl;}private:};class Android :public AbstractProduct{public:Android(string name):AbstractProduct(name){}void show(){cout<<mName<<"  creat by huawei"<<endl;}private:};class AbstractFactory{public:AbstractFactory(){}virtual AbstractProduct* CreateProduct()=0;protected:};class IphoneFactory:public AbstractFactory{public:IphoneFactory(){}AbstractProduct* CreateProduct(){return new Iphone("iphone");}};class AndroidFactory:public AbstractFactory{public:AndroidFactory(){}AbstractProduct* CreateProduct(){return new Android("android");}};int main(){AbstractFactory* pfc_iphone = new IphoneFactory;    AbstractFactory* pfc_andrid = new AndroidFactory;AbstractProduct* p_iphone = pfc_iphone->CreateProduct();p_iphone->show();}</span>

0 0
原创粉丝点击