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

推荐武进网站建设外贸公司怎么找客户

推荐武进网站建设,外贸公司怎么找客户,wordpress 古典主题,游戏开发需要学什么专业定义: 一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其他子类。 工厂方法通用类图: 这个图更好理解 在工厂方法模式中,抽象产品类Product负责定义产品的共性,实现对事物最抽象的…

定义:

一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其他子类。

工厂方法通用类图:

这个图更好理解

在工厂方法模式中,抽象产品类Product负责定义产品的共性,实现对事物最抽象的定义;Creator为抽象创建类,也是抽象工厂,具体如何创建产品类是由具体的实现工厂ConcreteCreator完成的。

工厂方法模式的应用

工厂方法模式的优点

良好的封装新,代码结构清晰。一个对象创建是有约束条件的,如一个调用者需要一个具体的产品对象,只要知道这个产品的类名(或者约束字符串)就可以了,不知奥创建对象的艰辛过程,降低模块间的耦合。

工厂方法模式是经典的解耦框架。高层模块只需要知道产品的抽象类,其他的实现类都不用关心。符合迪米特法则,我不需要就不要去交流;也符合依赖倒置原则,只依赖产品的抽象;当然也符合里氏替换原则,使用产品子类替换产品父类。

#include <iostream>using namespace std;
class Product
{
public:virtual void show() = 0;
};
class Factory
{
public:virtual Product* CreateProduct() = 0;
};
class ProductA : public Product
{
public:void show(){cout << "I'm ProductA" << endl;}
};
class ProductB : public Product
{
public:void show(){cout << "I'm ProductB" << endl;}};
class FactoryA : public Factory
{
public:Product* CreateProduct(){return new ProductA();}
};
class FactoryB : public Factory
{
public:Product* CreateProduct(){return new ProductB();}
};
int main()
{Factory* factoryA = new FactoryA();Factory* factoryB = new FactoryB();Product* productA = factoryA->CreateProduct();Product* productB = factoryB->CreateProduct();productA->show();productB->show();if (factoryA != nullptr){delete factoryA;factoryA = nullptr;}if (factoryB != nullptr){delete factoryB;factoryB = nullptr;}if (productA != nullptr){delete productA;productA = nullptr;}if (productB != nullptr){delete productB;productB = nullptr;}return 0;
}

参考:C++设计模式——工厂方法模式 - Ring_1992 - 博客园 (cnblogs.com)

http://www.sczhlp.com/news/133066/

相关文章:

  • 那个网站做推广比较好智慧团建电脑版登录
  • 东莞网站建设营销服务平台网站界面设计尺寸规范
  • 襄樊市网站建设头像制作logo免费生成器在线
  • 银行网站建设方案自建网站做淘宝联盟
  • 怎么做网站免费太原网站制作维护
  • 电子商务网站建设类型西城区网站建设推广seo
  • 一般公司做网站多少钱中国建筑查询平台
  • mysql慢sql配置
  • Linux zdb -C (zfs Debugger调试器)
  • 从零开始实现简易版Netty(八) MyNetty 实现Small规格的池化内存分配
  • 学校网站建设方案模板下载昆明seo技术培训
  • 不备案 网站 盈利wordpress原有注册登录页面
  • 怎么早网站上放广告可以做相册的网站
  • 做的比较好的p2p网站阿里云如何搭建网站
  • 如何做网页图片温州seo关键词
  • 影响力网站建设联雅网站建设
  • 怎样用ps做电子商务网站临海做网站公司
  • 测试脚本
  • 自动化测试脚本
  • 做公司的网站有哪些东西吗学校网站怎么做优化
  • 现在为什么网站都打不开了怎么办啊徐州网站建设哪家好薇
  • 井陉矿区网站建设中国移动官方网站官网
  • 网站优化排名方法网站开发费计入什么科目
  • 做ipo尽调需要用到的网站网站建设专业如何做到廉洁自律
  • 解题报告-字符串(str.*)
  • Linux 系统中的 /dev/disk/by-id/目录作用详解
  • glTF/glb:您需要知道的一切,怎么免费获取下载
  • 高端设计网站建设wordpress 怎么改字体大小
  • 网站丢失了怎么办建设部一建注册公示网站
  • wordpress 文章描述代码优化网站步骤