看板 GameDesign 關於我們 聯絡資訊
因為要翻舊文件查資料剛好翻到這篇我認為很有趣的題目. 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
-- "May the Balance be with U"(願平衡與你同在) 遊戲設計教學,討論,分享。歡迎來信。 黑水溝歷史文庫 https://ndark.wordpress.com/ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.240.206.94 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1758983410.A.4CF.html
wulouise: 6你是說crtp? 09/28 18:07
NDark: 我離開C++很久了名詞我不熟 有圖請自行看 09/28 18:28
nicetw20xx: 推分享 09/29 03:25
Killercat: 6不就loki的singleton XD 10/11 00:10
Killercat: 不過modern c++ design有些東西也滿過時了(遠目) 10/11 00:11
NDark: 恕我11年還真的不知道 後來都沒有再刷新C++知識了 10/11 08:41
kingroy: C++那個標準也是更新下檢只更一點又左右橫跳,想更新到C+ 11/13 11:21
kingroy: +20以後還有些feature其他compiler不支援 11/13 11:21