楼主:
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