【Qarth框架系列】单例实现

本文介绍了Unity框架Qarth中实现单例的方式,包括TSingleton和TMonoSingleton两个父类,它们提供了统一的静态访问单例对象的机制。TSingleton采用延迟初始化,而TMonoSingleton针对MonoBehaviour的特殊情况,处理场景中对象实例的存在与否。虽然方便,但过多的单例可能导致程序结构混乱,因此使用时需谨慎。
摘要由CSDN通过智能技术生成

单例的使用非常常见,在Unity中我们会碰到普通的C#类需要实现单例的情况,同时也会碰到继承MonoBehaviour的类需要实现单例的情况。Qarth中分别提供了这两种情况的父类:

TSingletonTMonoSingleton

通过继承它们实现静态访问该类单例对象的功能。

注意:Qarth中的单例并不禁止类对象存在多个实例,这两个父类的意义只是为了提供统一的单例实现和访问方式,并不是教科书意义上的单例.

代码示例

  • 普通类申明Singleton实现
    public class TableMgr : TSingleton<TableMgr>
    {
    }
  • MonoBehaviour子类申明Singleton
    [TMonoSingletonAttribute(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值