// 定义:由于过于简单没被GOF列入23种设计模式之中
//
// 模式举例:
//
// 模式特点:只有一个工厂,每新增一种类型都要改变工厂
//        生产的东西只能是衍生于同一个接口
//
//#include<iostream>
#include<string>
using namespace std;enum productType
{typeA,typeB,typeC
};class Product
{
public:virtual void showName()=0;
};class ProductA : public Product
{
public:virtual void showName(){cout <<"product name is productA"<<endl;}
};class ProductB : public Product
{
public:virtual void showName(){cout <<"product name is productB"<<endl;}
};class ProductC : public Product
{
public:virtual void showName(){cout <<"product name is productC"<<endl;}
};class SimpleFactory
{
public:Product * createProduct(productType type){Product * product = NULL;switch(type){case typeA:{product = new ProductA();}break;case typeB:{product = new ProductB();}break;case typeC:{product = new ProductC();};break;default:break;}return product;}
};int main()
{SimpleFactory * factory = new SimpleFactory();Product * product = factory->createProduct(typeA);product->showName();return 0;
}

0_0 SimpleFactoryMode 简单工厂模式相关推荐

  1. 设计模式之简单工厂模式

    一.概述 工厂模式具体包括了简单工厂.工厂方法.抽象工厂,它们是按照从简单到复杂的顺序排列的,属于设计模式中的创建型,其中简单工厂并不属于GOF的23中模式.   但是它是理解其它的工厂模式的一个很好 ...

  2. 设计模式 之美 -- 简单工厂模式

    文章目录 1. 解决问题 2. 应用场景 3. 实现 C++实现: C语言实现 4. 缺点 1. 解决问题 举例如下: 我们实现一个卖衣服的功能,衣服的种类有很多:帽子,裤子,T恤... 每卖一种衣服 ...

  3. 设计模式之简单工厂模式(Simply Factory)摘录

    从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一.简单工厂模式是由一个工厂对象决定创建出哪一种 ...

  4. Java中的简单工厂模式(转)

    Java中的简单工厂模式 举两个例子以快速明白Java中的简单工厂模式: 女娲抟土造人 话说:"天地开辟,未有人民,女娲抟土为人."女娲需要用土造出一个个的人,但在女娲造出人之前, ...

  5. 《JAVA与模式》之简单工厂模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式.简单工厂模式是由一个工厂 ...

  6. 简单工厂模式(StaticFactoryMethod)

    来华北电力大学数理系LSGO软件技术团队学习Coding,我通常第一个就讲"简单工厂模式",这一讲不仅仅是讲模式,更主要的是让大家体会什么是软件系统的"可复用" ...

  7. 设计模式之工厂类模式总结对比、简单工厂模式、工厂方法模式、抽象工厂模式、带反射的工厂模式、例子代码分析、最详细

    1. 题目 假设某公司同时用SqlServer.MySql数据库,即会切换两数据库(不同数据库的sql语句有些许差异),同时,两数据库里均有对Users.Departments表的操作(sql代码不一 ...

  8. java工厂模式 uml_简单工厂模式的UML类图与源码实现(转) | 学步园

    简单工厂模式的UML图 源码:Operation类 Java代码 packageOperation; publicabstractclassOperation { doublenumberA=0; d ...

  9. 设计模式(0)简单工厂模式

    0 设计模式基础 0.0 设计模式的定义 先来看一下设计模式常见的书面定义: 设计模式是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他 ...

最新文章

  1. 实战:人脸识别实战项目(源码共享)
  2. java集合---迭代器iterator
  3. 产品经理思维模型:传播三大原理
  4. http://nancyfx.org + ASPNETCORE
  5. 解开 Windows 下的临界区中的代码死锁(转)
  6. 设计公共API的六个注意事项
  7. Ubuntu系列10.04、11.04、12.04等虚拟机中安装VMware Tools
  8. php 修改文件的权限_php修改文件权限
  9. python3.6.5 安装第三方库
  10. 计算机需要那些高中数学知识点,高中必考数学知识点归纳整理
  11. Ubuntu20.04安装过程 【磁盘分区】
  12. 【喜讯 · 喜讯】讲师自营销计划奖励又双叒叕来了!
  13. JumpServer 堡垒机安装踩坑
  14. 第十八篇 -- 学习第十七天打卡20190705
  15. 零知识证明 - bellman源码分析
  16. docker学习笔记(10):docker迁移与升级等其它操作
  17. android开源框架总结
  18. GPT系列:Codex【使用GPT-3完成代码自动生成任务】
  19. 装机软件推荐(个人记录)
  20. Linux-CentOS 打造合适的科研环境

热门文章

  1. 微服务发现组件Eureka:微服务注册
  2. Ubuntu开放指定端口
  3. SpringBoot_日志-日志框架分类和选择
  4. spring事务管理-注解配置aop事务(重点)
  5. SocketIO-nio
  6. python把汉字转换为二进制数_在Python中,如何将8位二进制数转换为ASCII字符?
  7. Spring--IoC(2)
  8. IE下iframe跨域session和cookie失效问题的解决方案
  9. log4j(六)——log4j.properties简单配置样例说明
  10. getResource(String name)用法及源码分析