收藏 分销(赏)

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

上传人:xrp****65 文档编号:8993278 上传时间:2025-03-10 格式:DOC 页数:5 大小:51KB 下载积分:10 金币
下载 相关 举报
抽象工厂模式鲁菜红烧肉.doc_第1页
第1页 / 共5页
抽象工厂模式鲁菜红烧肉.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
#include <iostream>  #include <string>  using namespace std;  // 红烧肉   class CHongshaorou  {  public:      virtual ~CHongshaorou() {};      // 产品使用公共接口       virtual void Start() = 0;// 抽象基类,纯虚函数由派生类去实现   };   // 鲁菜红烧肉  class CHongshaorouLucai : public CHongshaorou  {  public:      CHongshaorouLucai()      {          cout << " 制作鲁菜红烧肉 ." << endl;      }      virtual ~CHongshaorouLucai() {};      virtual void Start()      {          cout << " 鲁菜红烧肉好了 ." << endl;      };  };  // 粤菜红烧肉   class CHongshaorouYuecai : public CHongshaorou  {  public:      CHongshaorouYuecai()      {          cout << " 制作粤菜红烧肉 ." << endl;      }      virtual ~CHongshaorouYuecai() {};      virtual void Start()      {          cout << " 粤菜红烧肉好了 ." << endl;      };  };   // 清蒸鱼   class Cqingzhengyu  {  public:      virtual ~Cqingzhengyu() {};      // 产品使用公共接口       virtual void Start() = 0;// 抽象基类,纯虚函数由派生类去实现   };   // 鲁菜清蒸鱼   class CqingzhengyuLucai : public Cqingzhengyu  {  public:      CqingzhengyuLucai()      {          cout << " 制作鲁菜清蒸鱼 ." << endl;      }      virtual ~CqingzhengyuLucai() {};      virtual void Start()      {          cout << " 鲁菜清蒸鱼好了 ." << endl;      };  };   // 粤菜清蒸鱼   class CqingzhengyuYuecai : public Cqingzhengyu  {  public:      CqingzhengyuYuecai()      {          cout << " 制作粤菜清蒸鱼 ." << endl;      }      virtual ~CqingzhengyuYuecai() {};      virtual void Start()      {          cout << " 粤菜清蒸鱼好了 ." << endl;      };  };  // 抽象工厂   class CFactory  {  public:      virtual ~CFactory(){};      virtual CHongshaorou* CreateHongshaorou() = 0;      virtual Cqingzhengyu* Createqingzhengyu() = 0;  };  // 鲁菜工厂   class CLucaiFactory : public CFactory  {  public:      CLucaiFactory()      {          cout << " 制作鲁菜工厂 ." << endl;      }      virtual ~CLucaiFactory(){};      virtual CHongshaorou* CreateHongshaorou()      {          return new CHongshaorouLucai;      };      virtual Cqingzhengyu* Createqingzhengyu()      {          return new CqingzhengyuLucai;       };  };  // 粤菜工厂   class CYuecaiFactory : public CFactory  {  public:      CYuecaiFactory()      {          cout << " 制作粤菜工厂 ." << endl;      }      virtual ~CYuecaiFactory(){};      virtual CHongshaorou* CreateHongshaorou()      {          return new CHongshaorouYuecai;      };      virtual Cqingzhengyu* Createqingzhengyu()      {          return new CqingzhengyuYuecai;      };  };  void Test(CFactory* pFactory)  {      CHongshaorou* pHongshaorou = NULL;      Cqingzhengyu* pqingzhengyu = NULL;      pHongshaorou = pFactory->CreateHongshaorou();// 制作红烧肉       pqingzhengyu = pFactory->Createqingzhengyu();// 制作清蒸鱼       pHongshaorou->Start();      pqingzhengyu->Start();      delete pqingzhengyu;      delete pHongshaorou;  };  int main()  {      CFactory* pFactory = NULL;// 抽象工厂       // 鲁菜工厂。做红烧肉,清蒸鱼       pFactory = new CLucaiFactory;// 制作鲁菜工厂       Test(pFactory);      delete pFactory;      cout<<endl;      // 粤菜工厂。做红烧肉,清蒸鱼       pFactory= new CYuecaiFactory;// 制作粤菜工厂       Test(pFactory);      delete pFactory;      system("pause");      return 0;  }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服