您的位置:首页 > 移动开发 > Unity3D

Unity 游戏框架搭建 (十三) 无需继承的单例的模板

2016-12-08 18:00 543 查看
之前的文章中介绍的 游戏框架搭建(二) 单例的模板 http://www.manew.com/thread-89635-1-1.html

和Unity游戏框架搭建(三) MonoBehaviour单例的模板http://www.manew.com/thread-89636-1-1.html有一些问题

存在的问题:

只要继承了单例的模板就无法再继承其他的类。

  虽然单例继承其他类是比较脏的设计,但是难免会遇到不得不继承的时候。没有最好的设计,只有最合适的设计。

解决方案:

首先实现单例的类从使用方式上应该不变,还是

[C#] 纯文本查看 复制代码

?
之前的单利的模板代码如下所示:

[C#] 纯文本查看 复制代码

?
12

按照以前的方式,如果想实现一个单例的代码应该是这样的:

[C#] 纯文本查看 复制代码

?
如果我想XXXManager继承一个BaseManager代码就变成这样了

[C#] 纯文本查看 复制代码

?
这样这个类就不是单例了,怎么办?

答案是通过C#的属性。

[C#] 纯文本查看 复制代码

?
08

好了,又看到陌生的东西了,QSingletonComponent是什么?

和之前的单例的模板很相似,贴上代码自己品吧...

[C#] 纯文本查看 复制代码

?
这样无法继承的问题就解决啦。

缺点是:相比于QSingleton,QSingletonComponent在使用时候多了一次函数调用,不过做中小型项目应该可以应付了。

介绍完毕,睡觉了。。。

附:我的框架地址:https://github.com/liangxiegame/QFramework

转载请注明地址:凉鞋的笔记 liangxiegame.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: