[程式] 使用C++六种实现singleton的方法

楼主: NDark (溺于黑暗)   2025-09-27 22:30:06
因为要翻旧文件查资料刚好翻到这篇我认为很有趣的题目.
2011 年我当时综合整理了我所理解Singleton能有几种不同的实现方式
(当时我主要是写C++所以以下的语法都是在这个程式语言上)
1. 静态全域物件 (static/global variable)
2. 静态区域物件 (static/function variable)
3. 静态类别成员 (static class member)
4. 静态类别指标 (static class pointer) : 我最喜欢的是这种.弹性最好.偶合及限制
最小.我把它叫做:收集器.
5. 继承专用的singleton样板 (inherit singleton template) : 这是当时最常见的作
法.
6. 反过来以singleton的样板去继承类别 : 这个方法很特别,非常优雅,但是程式码很
dirty.我很不喜欢去维护这种程式码. 后来我与C++的template就渐行渐远了.
https://i.meee.com.tw/1B4Fs2E.jpg
作者: wulouise (在线上!=在电脑前)   2025-09-28 18:07:00
6你是说crtp?
楼主: NDark (溺于黑暗)   2025-09-28 18:28:00
我离开C++很久了名词我不熟 有图请自行看
作者: nicetw20xx (哇爱台湾)   2025-09-29 03:25:00
推分享

Links booklink

Contact Us: admin [ a t ] ucptt.com