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

徐州模板建站平台新东方托福班价目表

徐州模板建站平台,新东方托福班价目表,自己做的网站打开太慢,淘宝客领券网站怎么做C建造者设计模式 什么是建造者设计模式 建造者设计模式是一种创建型设计模式,它是一种将复杂对象的分解为多个独立部分的模式,以便于构建对象的过程可以被抽象出来并独立变化。 该模式有什么优缺点 优点 灵活性:建造者设计模式允许对象的…

C++建造者设计模式

在这里插入图片描述

什么是建造者设计模式

建造者设计模式是一种创建型设计模式,它是一种将复杂对象的分解为多个独立部分的模式,以便于构建对象的过程可以被抽象出来并独立变化。

该模式有什么优缺点

优点

  1. 灵活性:建造者设计模式允许对象的部分以不同的方式进行构建,从而提高了对象的灵活性。
  2. 分离性:建造者设计模式将对象的构建过程与其表示分离开来,使得两者可以独立变化。
  3. 可重用性:建造者设计模式可以将对象的构建过程封装起来,以便在不同的场景下重用。

缺点

  1. 复杂性:建造者设计模式需要定义多个类和接口,这会增加代码的复杂度。
  2. 可读性:建造者设计模式的代码可能不够直观,需要一定的经验才能理解。

如何使用

下面是一个使用C++实现建造者设计模式的例子:

#include <iostream>  
#include <string>  
#include <vector>  // 定义产品类  
class Product {  
public:  void add(std::string part) {  parts.push_back(part);  }  std::string toString() {  std::string result = "";  for (auto part : parts) {  result += part + " ";  }  return result.substr(0, result.length() - 1);  }  private:  std::vector<std::string> parts;  
};  // 定义建造者接口  
interface Builder {  virtual void buildPart(std::string part) = 0;  
};  // 实现建造者类  
class ConcreteBuilder : public Builder {  
public:  void buildPart(std::string part) override {  product->add(part);  }  private:  Product* product;  public:  ConcreteBuilder(Product* product) : product(product) {}  
};  // 定义指挥者类  
class Director {  
public:  void construct(Builder* builder) {  builder->buildPart("Part1");  builder->buildPart("Part2");  builder->buildPart("Part3");  }  
};  // 使用建造者设计模式的例子  
int main() {  Product* product = new Product();  Builder* builder = new ConcreteBuilder(product);  Director director;  director.construct(builder);  std::cout << product->toString() << std::endl;  delete product;  delete builder;  return 0;  
}

在上面的例子中,我们首先定义了一个Product类,它表示要构建的对象。然后我们定义了一个Builder接口,它定义了构建对象的方法。接着我们实现了ConcreteBuilder类,它实现了Builder接口,并将对象的构建过程封装起来。最后我们定义了Director类,它负责指导构建过程。在main函数中,我们创建了一个Product对象和一个ConcreteBuilder对象,并将它们关联起来。然后我们使用Director类来指导构建过程,最终输出构建好的对象。需要注意的是,在使用建造者设计模式时,需要仔细设计接口和类之间的关系,以便正确地构建对象。

http://www.tj-hxxt.cn/news/49242.html

相关文章:

  • 医院网站开发seo排名工具
  • 专业做网站推广的公司简短的营销软文范文
  • 北京工商局网站如何做股东变更互联网营销师培训课程
  • 互动创意网站百度网盘登录入口网页版
  • 企业为什么需要网站黑科技引流推广神器
  • wordpress 新打开空白页湘潭网站seo
  • wordpress 新闻类网站网络推广策划
  • 网站推广的优点关键词优化软件排行
  • 特效做的很牛逼的网站公司网站页面设计
  • 30天网站建设全程实录 pdf微信营销的方法
  • 网站如何看是哪家公司做的关键词密度查询站长工具
  • 涡阳网站建设哪家好一周热点新闻
  • 网站建设性能分析如何营销
  • 免费自助站制作在线淮安百度推广公司
  • 招远做网站价格深圳网络推广哪家公司好
  • windows 网站开发今日新闻热点
  • 网站制作网页设计境外电商有哪些平台
  • axure做交易网站seo课程培训视频
  • 小男孩与大人做的网站营销策划公司 品牌策划公司
  • wordpress 不带主题显示关键词优化seo排名
  • 一个网站绑定多个域名 卖域名seo内部优化方式包括
  • 河东做网站流程优化的七个步骤
  • 分布式网站架构短网址
  • 网站专题报道页面怎么做的百度推广优化是什么意思
  • html5网站是用什么软件做的优化系统软件
  • 精通网站建设电子档关于seo如何优化
  • 公司就我一个网站制作百度搜索百度
  • 让别人做网站需要注意什么口碑推广
  • 中国建设银行公司网站官网天津seo排名公司
  • 有空间与域名 怎么做网站今日头条网页版入口