简单工厂模式
Posted 老羔羊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单工厂模式相关的知识,希望对你有一定的参考价值。
简单工厂模式就是一个工厂根据不同的产品类型可以生产出不同的产品,如下所示Factory 根据不同类型(A、B)产生不同的产品(ProductA,ProcuctB)
#include <iostream> using namespace std; enum ProductType { A = 1, B = 2 }; class Product { public: virtual ~Product(){} virtual void create() = 0; }; class ProductA : public Product { void create(){ cout << "A create()" << endl;} }; class ProductB : public Product { void create(){ cout << "B create()" << endl;} }; class Factory { public: Product* createProduct(ProductType type) { switch(type) { case A: return new ProductA(); case B: return new ProductB(); } return nullptr; } }; int main() { Factory* f = new Factory(); Product* pa = f->createProduct(A); Product* pb = f->createProduct(B); pa->create(); pb->create(); delete pa; pa = nullptr; delete pb; pb = nullptr; delete f; f = nullptr; }
以上是关于简单工厂模式的主要内容,如果未能解决你的问题,请参考以下文章