C++实现设计模式——享元(Flyweight)模式

本文介绍了C++中享元模式的定义、结构及应用场景。享元模式通过共享技术有效支持大量细粒度对象的复用,包括抽象享元类Flyweight、具体享元类ConcreteFlyweight、非共享具体享元类UnsharedConcreteFlyweight以及享元工厂类FlyweightFactory。当需要降低大量相似对象的内存开销时,享元模式是一种有效的解决方案。
摘要由CSDN通过智能技术生成

C++实现设计模式——享元(Flyweight)模式

  • 享元模式定义
运用共享技术有效地支持大量细粒度对象的复用,系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用,由于享元模式要求能够共享的对象必须是细粒度对象,因此它又称为轻量级模式,是一种结构型模式。
  • 享元模式结构

  1. Flyweight(抽象享元类):一个接口或抽象类,声明了具体享元类的公共方法。
  2. ConcreteFlyweight(具体享元类):实现了抽象享元类,其实例称为享元对象。
  3. UnsharedConcreteFlyweight(非共享具体享元类):并不是所有的抽象享元类的子类都需要被共享,不能被共享的子类可设计为费共享具体享元类。
  4. FlyweightFactory(享元工厂类):用于创建并管理享元对象。
  • 享元模式应用场景

一个应用程序使用了大量对象,而大量的这些对象造成大量存储开销时就

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值