Flyweight Design Pattern 共享元设计模式

就是利用一个类来完毕多种任务,不用每次都创建一个新类。

个人认为这个设计模式在C++里面。好像能够就使用一个函数取代,利用重复调用这个函数完毕任务和重复利用这个类,好像差点儿相同。

只是既然是一个设计模式,那么就使用类来完毕任务。

而对于Java来说是不面向过程的,故此就必须使用这个设计模式了。

我这里设计一个仓库来保存这种类。须要的时候重复取出来使用。

很easy的设计模式:

#include <stdio.h>

class ReusedObject
{
public:
	ReusedObject() {}
	void finishTask()
	{
		puts("Use reused object to do task.");
	}
};

class Warehouse
{
	ReusedObject *obj;
public:
	Warehouse()
	{
		obj = new ReusedObject;
	}

	~Warehouse()
	{
		delete obj;
	}

	ReusedObject *getObject()
	{
		return obj;
	}
};

int main()
{
	Warehouse wh;
	ReusedObject *obj = wh.getObject();
	obj->finishTask();
	return 0;
}



原文地址:https://www.cnblogs.com/yfceshi/p/7205562.html