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

网站上做推广全flash网站欣赏

网站上做推广,全flash网站欣赏,网站页面设计优化方案,北京婚恋网站哪家最好定义: 一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其他子类。 工厂方法通用类图: 这个图更好理解 在工厂方法模式中,抽象产品类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.yayakq.cn/news/767582/

相关文章:

  • 网站建设与维护需要网页制作个人介绍代码
  • 跳转网站正在建设中传奇世界官网电脑版
  • 农产品网站建设案例网站制作的报价大约是多少
  • 网站logo制作软件怎么选择企业建站公司
  • 做网站应该画什么图在线平面设计工具
  • 做网站需要注意的风险排行前十装修公司
  • 注册一个网站要多少费用包装设计与制作专业学什么
  • 美食网站主页怎么做厦门装修公司网站建设
  • 服饰营销型网站建设做vip的网站好做吗
  • 部门网站建设管理经验交流材料网上虚拟银行注册网站
  • 竞价网站推广申请商标官网
  • 第三方微信网站建设电商平台软件开发公司
  • iis7配置网站404页面免费站长工具
  • 石家庄裕华区网站建设上海有名的装修公司
  • python网站开发框架酒类网站建
  • 宁波建设安全协会网站如何做自媒体
  • 山东省建设节能协会网站高唐建筑公司网站
  • 做外贸是什么网站织梦多语言网站
  • 网站 被降权争对银行排队做一网站
  • 如需锦州网站建设国家拨款农村建设查询的网站
  • 做网站意义和目的北京平面设计工作室
  • 怎么建设一个自己的电商网站wordpress的feed
  • 教育网站建设 培训网站建设成都网站开发 优帮云
  • 网站开发学习路线wordpress分类链接打不开
  • 专业的网站开发联系方式可以浏览国外网站
  • 网站的分辨率是多少像素如何推进网站建设
  • 长春建设银行网站深圳保障性住房和安居房的区别
  • 怎么到百度做网站网站备案证书打印
  • 勒流网站制作wordpress plugin development
  • 注册了域名怎么做网站wordpress主题极简cho