当前位置: 首页 > 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://www.huolong8.cn/news/382177/

相关文章:

  • 只做正品的购物网站中咨城建设计有限公司 网站
  • 做内网网站网站建设进度
  • 网站转化率是什么意思住房和城乡建设部网站 投诉
  • 绍兴高端网站开发网络搭建百度百科
  • 东莞企业网站推广公司专业网站建站
  • 做单页网站需要做什么阿里巴巴网站装修怎么做全屏大图
  • 东莞网站建设的收费cdn接入wordpress出错
  • 网站开发发展趋势深圳设计公司招聘网站
  • app企业网站模板免费下载百度联盟项目看广告挣钱
  • 网站建设v网站系统建设需要什么资质
  • 门户网站建站合同在线制作logo模板
  • 北京飞雨网站建设公司wordpress全站美化
  • 视频网站怎么做统计表seo关键词排名优化费用
  • 陕西建设执业中心网站办事大厅辽宁省建设工程信息网网址
  • 网站暂停怎么做宜宾移动网站建设
  • c语言开发网站教程个人可以做招聘网站吗
  • 东莞网站建设做网站刷网站seo排名软件
  • 房产交易网站建设策划案网站建设开发价格高吗
  • 网站建设百度唐山设计网站公司
  • 惠州网站制作工具建筑设计公司logo
  • 邯郸网站建设有哪些自己做的网站搜索引擎搜不到
  • 建设一个大型电影网站费用东莞建设网官方网站
  • 肥城市建设局网站网站开发html5技术
  • 口碑好的秦皇岛网站建设哪里有图网
  • 批量做网站软件济南做网站最好的公司
  • gps建站教程上海市城乡住房建设部网站
  • 多语言外贸网站开发wordpress怎么下载文件
  • 企业网站设计的功能链接转wordpress
  • 上海网站建设的英文西安企业网站建站
  • 自己做网站卖衣服网站前台建设需要哪些技术知识