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

河南省建设工程质监总站网站织梦和wordpress能共存

河南省建设工程质监总站网站,织梦和wordpress能共存,电子商务网站网络推广方式,用npp做网站定义 定义一个用于创建对象的接口#xff0c;让子类决定实例化哪一个类。Factory Method使得一个类的实例化延迟(目的:解耦#xff0c;手段:虚函数)到子类。 应用场景 在软件系统中#xff0c;经常面临着创建对象的工作;由于需求的变化#xff0c;需要创建的对象的具体类…定义 定义一个用于创建对象的接口让子类决定实例化哪一个类。Factory Method使得一个类的实例化延迟(目的:解耦手段:虚函数)到子类。 应用场景 在软件系统中经常面临着创建对象的工作;由于需求的变化需要创建的对象的具体类型经常变化。如何应对这种变化?如何绕过常规的对象创建方法(new),提供一种“封装机制来避免客户程序和这种具体对象创建工作的紧耦合? 结构 代码示例 //Factory.h /****************************************************/ #ifndef FACTORY_H #define FACTORY_H #includeiostream using namespace std;class Shape { public:Shape() {};virtual ~Shape() {};virtual void draw() 0;enum Shape_type{ Rectangle , Square, Circle}; };class Rectangle :Shape { public:Rectangle() {};~Rectangle() {};void draw() { cout Inside Rectangle::draw() method. endl; }; };class Square :Shape { public:Square() {};~Square() {};void draw() { cout Inside Square::draw() method. endl; }; };class Circle :Shape { public:Circle() {};~Circle() {};void draw() { cout Inside Circle::draw() method. endl; }; };class ShapeFactory { public:ShapeFactory() {};~ShapeFactory() {};Shape* getShapeFactory(Shape::Shape_type type); };Shape* ShapeFactory::getShapeFactory(Shape::Shape_type type) {switch (type){case Shape::Rectangle:return (Shape*)new Rectangle();case Shape::Square:return (Shape*)new Square();case Shape::Circle:return (Shape*)new Circle();default:return NULL;} }#endif //test.cpp /****************************************************/ #include iostream #include string #include Factory.h int main() {ShapeFactory shapefac;Shape *t1 (Shape*) shapefac.getShapeFactory(Shape::Circle);Shape *t2 (Shape*)shapefac.getShapeFactory(Shape::Circle);Shape *t3 (Shape*)shapefac.getShapeFactory(Shape::Circle);t1-draw();t2-draw();t3-draw();delete t1;t1 NULL;delete t2;t2 NULL;delete t3;t3 NULL;return 0; }运行结果 要点总结 Factory Method模式用于隔离类对象的使用者和具体类型之间的耦合关系。面对一个经常变化的具体类型紧耦合关系(new)会导致软件的脆弱。Factory Method模式通过面向对象的手法将所要创建的具体对象工作延迟到子类从而实现一种扩展(而非更改)的策略较好地解决了这种紧耦合关系。Factory Method模式解决“单个对象’的需求变化。缺点在于要求创建方法/参数相同。
http://wiki.neutronadmin.com/news/24276/

相关文章:

  • 普通人怎么样做网站设计公司灰白色调网站
  • wdcp网站迁移接效果图做网站
  • 几百的网站网站ui升级怎么做
  • 建教会网站的内容广告制作简介
  • wordpress 2013如何进行网站性能优化?
  • 网站建设支付赣州网站优化
  • php可以做网站吗凡科做网站
  • 如何做网站弹窗广告华为云云速建站怎样
  • 个人不良信息举报网站电子商务网站建设参考文献2018
  • 公司变更名字需要什么手续十堰seo公司
  • 帝国网站后台认证码错误商务网站建设的应用
  • 做购买网站网站建设交付物清单
  • 做公众号的网站有哪些功能wordpress获取tag地址
  • 阿里巴巴网站建设基础服务wordpress安装主题ftp
  • 深圳哪家公司需要网站建设的网站开发为什么采取ssh框架
  • 专注营销型网站建设公司 做网站网站 空间 备案
  • 正能量网站ip手机如何创造网站
  • 网站企划设计公司wordpress 手机菜单栏插件
  • 汝阳县建设局网站做娱乐网站少10个页面
  • 天津市建设银行网站上海十大跨境电商排名
  • 网站动画用什么做的阿里云WordPress应用php升级
  • 丹东市做网站医疗网站建设服务
  • 谷歌官方网站首页怎么做网站的api
  • 企业活动网站创意案例wordpress内链添加位置
  • 网站内容如何编辑软件面签拍照 网站备案
  • 道滘东莞网站建设优化关键词排名软件
  • 网站服务器内网打不开网页跨境电商多平台运营
  • 做百度网站dz网站模板
  • 小型网站建设案例杭州做网站
  • 推广网站有哪些平台徐州网站排名公司哪家好