抽象工厂模式鲁菜红烧肉.doc
上传人:qw****27 上传时间:2024-09-11 格式:DOC 页数:5 大小:51KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

抽象工厂模式鲁菜红烧肉.doc

抽象工厂模式鲁菜红烧肉.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

#include<iostream>#include<string>usingnamespacestd;//红烧肉classCHongshaorou{public:virtual~CHongshaorou(){};//产品使用公共接口virtualvoidStart()=0;//抽象基类,纯虚函数由派生类去实现};//鲁菜红烧肉classCHongshaorouLucai:publicCHongshaorou{public:CHongshaorouLucai(){cout<<"制作鲁菜红烧肉."<<endl;}virtual~CHongshaorouLucai(){};virtualvoidStart(){cout<<"鲁菜红烧肉好了."<<endl;};};//粤菜红烧肉classCHongshaorouYuecai:publicCHongshaorou{public:CHongshaorouYuecai(){cout<<"制作粤菜红烧肉."<<endl;}virtual~CHongshaorouYuecai(){};virtualvoidStart(){cout<<"粤菜红烧肉好了."<<endl;};};//清蒸鱼classCqingzhengyu{public:virtual~Cqingzhengyu(){};//产品使用公共接口virtualvoidStart()=0;//抽象基类,纯虚函数由派生类去实现};//鲁菜清蒸鱼classCqingzhengyuLucai:publicCqingzhengyu{public:CqingzhengyuLucai(){cout<<"制作鲁菜清蒸鱼."<<endl;}virtual~CqingzhengyuLucai(){};virtualvoidStart(){cout<<"鲁菜清蒸鱼好了."<<endl;};};//粤菜清蒸鱼classCqingzhengyuYuecai:publicCqingzhengyu{public:CqingzhengyuYuecai(){cout<<"制作粤菜清蒸鱼."<<endl;}virtual~CqingzhengyuYuecai(){};virtualvoidStart(){cout<<"粤菜清蒸鱼好了."<<endl;};};//抽象工厂classCFactory{public:virtual~CFactory(){};virtualCHongshaorou*CreateHongshaorou()=0;virtualCqingzhengyu*Createqingzhengyu()=0;};//鲁菜工厂classCLucaiFactory:publicCFactory{public:CLucaiFactory(){cout<<"制作鲁菜工厂."<<endl;}virtual~CLucaiFactory(){};virtualCHongshaorou*CreateHongshaorou(){returnnewCHongshaorouLucai;};virtualCqingzhengyu*Createqingzhengyu(){returnnewCqingzhengyuLucai;};};//粤菜工厂classCYuecaiFactory:publicCFactory{public:CYuecaiFactory(){cout<<"制作粤菜工厂."<<endl;}virtual~CYuecaiFactory(){};virtualCHongshaorou*CreateHongshaorou(){returnnewCHongshaorouYuecai;};virtualCqingzhengyu*Createqingzhengyu(){returnnewCqingzhengyuYuecai;};};voidTest(CFactory*pFactory){CHongshaorou*pHongshaorou=NULL;Cqingzhengyu*pqingzhengyu=NULL;pHongshaorou=pFactory->CreateHongshaorou();//制作红烧肉pqingzhengyu=pFactory->Createqingzhengyu();//制作清蒸鱼pHongshaorou