工厂模式总结

一、简单工厂模式

工厂类判断要生产什么产品并调用相应的构造函数。当增加新产品时就要修改工厂类,这违反了“软件实体(类、模块、函数)可以扩展,但是不可修改”的开放封闭原则。

产品基类有纯虚函数。

产品子类继承产品基类。

工厂类中有生产函数。

使用方法:创建产品基类指针,创建工厂对象,调用工厂对象的生产函数,套入产品类型参数,并将返回值赋给基类指针,基类指针可调用相应产品子类的接口函数。


二、工厂方法模式

在简单工厂模式的基础上,将工厂类改为拥有纯虚生产函数的工厂基类,增设继承工厂基类的工厂子类,每一种工厂子类只生产一种产品。

使用方法:创建产品基类指针,要生产哪种产品,就创建对应的工厂子类对象,并调用该工厂子类对象的生产函数,将返回值赋给基类指针,基类指针可调用相应产品子类的接口函数。


三、抽象工厂模式

在工厂方法模式的基础上,增设产品族,每一个产品族都有一个产品基类,并在工厂基类和工厂子类中增添相应的纯虚生产函数和接口生产函数。


四、参考资料

《三种工厂模式的C++实现》 优快云 用户 拳四郎 著

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值