C++ 设计模式(八) FlyWeight模式
来源:互联网 发布:淘宝客服每周工作总结 编辑:程序博客网 时间:2024/05/17 16:53
问题:
在面向对象的设计过程中,可能需要创建创建许多对象,而实际上这些对象没有多大的区别,我们可以创建一个对象,让这许多对象共享一个对象,当然这些对象可能会有些许属性差异,我们可以通过调整这些属性来达到我们的要求。这样的好处是可以避免重复创建对象带来空间和时间的浪费。
UML:
实现:
需要说明的是下面的实现仅仅实现了对可共享对象的使用,非可共享对象的使用没有列出,因为这个不是Flyweight模式的重点.这里的实现要点是采用一个vector来保存这些可以被共享的对象,需要使用的时候就到链表中查询是不是已经存在了,如果不存在就初始化一个,然后返回这个对象的指针.
flyweight.h
flyweight.cpp
flyweightfactory.h
flyweightfactory.h
main.cpp
- C++ 设计模式(八) FlyWeight模式
- 设计模式 - Flyweight模式
- 设计模式--FlyWeight 模式
- 设计模式-- Flyweight
- Flyweight设计模式
- 设计模式之 flyweight
- Flyweight设计模式
- 设计模式-FlyWeight
- 设计模式11 - Flyweight
- JAVA设计模式-FlyWeight
- 设计模式之FlyWeight
- Flyweight 设计模式
- Structual设计--Flyweight模式
- 设计模式之FlyWeight
- 设计模式之Flyweight
- c++ FlyWeight 设计模式
- 设计模式之FlyWeight模式
- 乐在其中设计模式(C#) - 享元模式(Flyweight Pattern)
- 类的继承-虚函数表
- 您一生中经常遇到五个有趣的问题
- 仰望天空
- 2011十大战略技术
- dde server window winword.exe 解决方案
- C++ 设计模式(八) FlyWeight模式
- ubuntu 10.04 编译安装最新版本linux-2.6.34内核
- 扯
- SQL重复记录查询(转载)
- c++实践下载
- Linux-0.01 main.c 注释
- 让CListCtrl的SubItem也具有编辑功能:
- 辽宁IBM服务器金牌代理商
- 华军推荐,海奇杀毒软件