当前位置: 首页 > news >正文

棋牌游戏网站怎么做的郑州有没有厉害的seo顾问

棋牌游戏网站怎么做的,郑州有没有厉害的seo顾问,管理平台,网站建设与部署阿里云大学定义 工厂设计模式是一种创建型设计模式#xff0c;它提供了一个用于创建对象的接口#xff0c;但允许子类决定实例化哪个类。这种设计模式使一个类的实例化延迟到其子类。 实现举例 #include iostream #include string// 抽象产品类 class Product { pub…定义 工厂设计模式是一种创建型设计模式它提供了一个用于创建对象的接口但允许子类决定实例化哪个类。这种设计模式使一个类的实例化延迟到其子类。 实现举例 #include iostream #include string// 抽象产品类 class Product { public:virtual void use() 0; };// 具体产品类A class ConcreteProductA : public Product { public:void use() override {std::cout Im using product A! std::endl;} };// 具体产品类B class ConcreteProductB : public Product { public:void use() override {std::cout Im using product B! std::endl;} };// 工厂类 class Factory { public:virtual Product* createProduct(std::string type) 0; };// 具体工厂类A class ConcreteFactoryA : public Factory { public:ConcreteProductA* createProduct(std::string type) override {if (type A) {return new ConcreteProductA();} else {return nullptr;}} };// 具体工厂类B class ConcreteFactoryB : public Factory { public:ConcreteProductB* createProduct(std::string type) override {if (type B) {return new ConcreteProductB();} else {return nullptr;}} };int main() {// 使用具体工厂类A创建产品AConcreteFactoryA* factoryA new ConcreteFactoryA();ConcreteProductA* productA dynamic_castConcreteProductA*(factoryA-createProduct(A));if (productA ! nullptr) {productA-use();delete productA; // 不要忘记删除产品对象} else {std::cout Failed to create product A. std::endl;}delete factoryA; // 不要忘记删除工厂对象// 使用具体工厂类B创建产品BConcreteFactoryB* factoryB new ConcreteFactoryB();ConcreteProductB* productB dynamic_castConcreteProductB*(factoryB-createProduct(B));if (productB ! nullptr) {productB-use();delete productB; // 不要忘记删除产品对象} else {std::cout Failed to create product B. std::endl;}delete factoryB; // 不要忘记删除工厂对象return 0; }总结 工厂设计模式具有以下特性 封装性产品的实例化被封装在工厂类中这可以避免产品被修改从而保证产品的一致性。扩展性增加新产品时只需增加一个工厂子类不会违反开闭原则。解耦使用者只需要知道自己需要什么产品而不需要关心产品具体的特性从而降低了模块间的耦合。 请注意工厂设计模式也存在一些缺点例如代码量可能会比较大而且不利于扩展复杂的产品结构。
http://wiki.neutronadmin.com/news/382177/

相关文章:

  • 网站开发的形式有( )网站建设代码编译的问题及解决方案
  • 官网网站设计费用新莱芜网
  • 电子产品的网站建设企业门户网站需求文档
  • 移动商城网站开发wordpress登录加验证码
  • 做电影网站哪个源码好360建筑网撤销自己的简历怎么撤销
  • 戴尔网站建设和维护宁波专业做网站
  • cms自助建站系统wordpress高端
  • 网站公司服务器可做域名空间用阿里云和大淘客做网站
  • 好的素材下载网站wordpress游戏评测站睡觉
  • 深圳做app网站建设番禺高端网站制作
  • 电商网站开发方案模板做网站的好项目
  • 台州做网站是什么大型百度云网站建设
  • 贵阳网站建设方案维护河北省住房建设厅网站首页
  • 互联网网站设计简网app工场怎么创app
  • 高密做网站的公司广告公司账务处理
  • 中国建材网站咋制作网站
  • 定制网站制作公司怎么样在线教育网站平台建设的意义
  • 网站收录查询临沂seowordpress网页缓存插件
  • 芜湖营销型网站建设google网站优化器
  • 网站页头是什么房地产市场理论
  • cms网站如何修改做h5页面的网站蘑菇
  • 购买一个网站空间如何可以多个域名使用吗html5单页网站模板
  • app与网站数据交互wordpress qqword
  • 网站升级维护中页面微网站开发教材
  • 网站制作公司多少费用海南建设银行招聘网站
  • 陕西 网站建设 陕ICP广州万安建设监理有限公司网站
  • 做网站需要什么证明嘛宁波专业网站制作
  • 东莞市外贸网站建设多少钱wordpress 模板汉化
  • 济南学生网站建设求职怎样在百度上建网站
  • 天津南开做网站咸阳网站建设推广