單例模式需要釋放嗎

2021-06-18 19:01:03 字數 507 閱讀 3191

q:單例模式需要釋放嗎

a1:這個問題我也想過,既然是單例,就是不管呼叫者什麼時候呼叫,你必須馬上給他返回乙個例項,所以,在整個程式的生命週期裡,他一直存在,所以不釋放也沒關係的,建議開始用arc,我也才開始用沒多久,感覺比之前的寫**爽多了 

a2:記得我還是個懵懂少年的時候查過這個問題... sof 告訴我 singleton 不需要 release...

這件事告訴我們, 要善用 google... 

a3:我覺得樓主問的有點歧義。。。。是問單例的物件不用release?還是問 單例類裡的**不用release?

單例的物件從被建立就跟程式共存亡了,當然不用你去釋放這個物件。

如果是問單例類裡面的**用不用release,你如果沒開arc,那很多情況下妥妥的是用到release了。你的一些成員變數如果沒釋放,那dealloc裡面當然要釋放。**裡面如果用到了各種物件,該怎麼release的還是怎麼release。 

sof說的不算錯,但6樓的兄弟應該是個會深究的人,怎麼沒深究原因呢 

Python 需要單例模式嗎

python真的需要去實現單例模式嗎?不需要。因為,python有模組 module 最pythonic的單例典範。模組在乙個應用程式中只有乙份,本身就是單例的,將你所需要的屬性和方法,直接暴露在模組中變成模組的全域性變數和方法即可!some module.py class singletoncla...

單例模式的記憶體釋放

單例模式前面已經說過了,下面說說單例模式的私有靜態成員 singleton的釋放 如果在類的析構行為中有必須的操作,比如關閉檔案,釋放外部資源,那麼上面所示的 無法實現這個要求。我們需要一種方法,正常地刪除該例項。可以在程式結束時呼叫getinstance並對返回的指標呼叫delete操作。這樣做可...

單例模式的自動釋放

一般來說,程式退出的時候,所有的資源都被 但是在使用檢測記憶體洩露的工具比如valgrind時會被檢測出來,可以理解為這是一種 假的記憶體洩漏 為此,這裡分別使用三種方法來避免這個問題。實現 1 include 2 using std cout 3 using std endl 45 class s...