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

安徽网站制作天津房产网

安徽网站制作,天津房产网,TP框架网站的中英文切换怎么做,手机建设网站目录 生成器模式#xff08;Builder Pattern#xff09; 实际应用 构建一辆汽车 构建一台计算机 构建一个房子 总结 生成器模式#xff08;Builder Pattern#xff09; 生成器模式是一种创建型设计模式#xff0c;它允许你分步骤创建复杂对象。与其他创建型模式不同…目录 生成器模式Builder Pattern 实际应用 构建一辆汽车 构建一台计算机 构建一个房子 总结 生成器模式Builder Pattern 生成器模式是一种创建型设计模式它允许你分步骤创建复杂对象。与其他创建型模式不同的是生成器模式允许你在一个过程中创建一个对象而无需等待所有部分都准备好。这种模式特别适用于需要构造不同表示或状态的复杂对象时。 实际应用 1. 需要构造的对象包含多个部分且需要分步骤创建。 2. 希望使用相同的创建过程来构造不同表示的对象。 3. 构造过程需要能够被隔离和独立变化。 构建一辆汽车 假设我们有一个Car类它有很多可选属性例如车的颜色、发动机类型、轮胎类型等等。 #include iostream #include stringclass Car { public:std::string color;std::string engine;std::string tires;std::string interior;void show() {std::cout Car Details:\n Color: color \n Engine: engine \n Tires: tires \n Interior: interior \n;} };class CarBuilder { private:Car car; public:CarBuilder setColor(const std::string color) {car.color color;return *this;}CarBuilder setEngine(const std::string engine) {car.engine engine;return *this;}CarBuilder setTires(const std::string tires) {car.tires tires;return *this;}CarBuilder setInterior(const std::string interior) {car.interior interior;return *this;}Car build() {return car;} };int main() {CarBuilder builder;Car car builder.setColor(Red).setEngine(V8).setTires(Sport).setInterior(Leather).build();car.show();return 0; }构建一台计算机 假设我们有一个Computer类它有很多可选属性例如CPU类型、RAM大小、存储类型和大小等等。 #include iostream #include stringclass Computer { public:std::string cpu;int ram;std::string storageType;int storageSize;void show() {std::cout Computer Details:\n CPU: cpu \n RAM: ram GB\n Storage Type: storageType \n Storage Size: storageSize GB\n;} };class ComputerBuilder { private:Computer computer; public:ComputerBuilder setCPU(const std::string cpu) {computer.cpu cpu;return *this;}ComputerBuilder setRAM(int ram) {computer.ram ram;return *this;}ComputerBuilder setStorageType(const std::string storageType) {computer.storageType storageType;return *this;}ComputerBuilder setStorageSize(int storageSize) {computer.storageSize storageSize;return *this;}Computer build() {return computer;} };int main() {ComputerBuilder builder;Computer computer builder.setCPU(Intel i9).setRAM(32).setStorageType(SSD).setStorageSize(1024).build();computer.show();return 0; }构建一个房子 假设我们有一个House类它有很多可选属性例如房间数量、楼层数量、花园是否存在、是否有车库等等。 #include iostream #include stringclass House { public:int rooms;int floors;bool garden;bool garage;void show() {std::cout House Details:\n Rooms: rooms \n Floors: floors \n Garden: (garden ? Yes : No) \n Garage: (garage ? Yes : No) \n;} };class HouseBuilder { private:House house; public:HouseBuilder setRooms(int rooms) {house.rooms rooms;return *this;}HouseBuilder setFloors(int floors) {house.floors floors;return *this;}HouseBuilder setGarden(bool garden) {house.garden garden;return *this;}HouseBuilder setGarage(bool garage) {house.garage garage;return *this;}House build() {return house;} };int main() {HouseBuilder builder;House house builder.setRooms(5).setFloors(2).setGarden(true).setGarage(true).build();house.show();return 0; }总结 每个生成器类负责设置对象的各个属性并在最终构建出对象。
http://www.w-s-a.com/news/553962/

相关文章:

  • 购物网站服务器带宽北京网站开发周期
  • 同性做视频网站网站怎么添加栏目
  • 新余网站设计seo自学网站
  • 新乡个人网站建设价格wordpress数据插件
  • 你是网站设计有限公司的项目经理网站推广的重要性
  • 网站定制开发怎么写泸州设计公司有哪些
  • 上海网站建设zj kt迅速编程做网站
  • 郑州服装 网站建设网站栏目合理性
  • 平面设计在线网站最新汽油价格调整最新消息
  • 刷单网站建设wordpress缩略图 裁剪
  • 视差 网站泰州公司做网站
  • 广州网站优化系统怎么做淘客网站
  • 类似凡科互动的网站wordpress网站下载
  • 临沂网站制作公司安卓app开发实例教程
  • 泰州做网站 泰公网络科技公司网站升级中html
  • 如何做授权网站网站设计心得
  • 网站排名快速上升wordpress自动标签页
  • 做的好的手机网站有哪些万网域名交易
  • 网站怎么做漂亮点做陶瓷的公司网站
  • 软件开发设计制作网站下载自己怎么做视频收费网站
  • 江苏省建设安全协会网站天津网站建设哪家公司好
  • 资源类网站怎么做的网站上线准备工作
  • 长沙专业网站建设怎么做企业建站公司服务
  • 肇庆市有限公司网站建设手机直接看的网站有哪些
  • 织梦修改网站后备份英语作文模板高中
  • 个人网站域名用什么好上海公司拍沪牌需要什么条件
  • 网站建设 保密做网站赚钱交税
  • 食品建设网站前的市场分析进出口网站贸易平台有哪些
  • php商城网站建设个人网站用什么服务器
  • 如何做好品牌网站建设方案网站开发的学习