我正在研究基於ARC的項目。我的網點宣佈使用
unsafe_unretained屬性。每當我使用這些網點時,我都會在自己的代碼中隨處使用self.outletname
。但是我聽到有人說,使用self會增加保留計數的數量,我們應該只將它用於強屬性。我很困惑。我們不應該使用自己的弱財產?何時使用自我。設置變量時使用前綴?
1
A
回答
0
self.propertyName = newValue
只會增加保留計數newValue
,如果它是保留的屬性。
+0
這是非常不完整的。點符號('self.whatever')是屬性的語法。屬性只是一對getter和setter方法。而已。你在調用一個方法。它不必與實例變量或保留有任何關係。您可以(或者在最近的版本中,編譯器可以自動)*根據您選擇的實例變量合成* getters和setters。合成的getter/setter所做的取決於屬性的聲明方式。如果聲明爲「retain」,那麼setter將釋放前一個值並保留新值。 – newacct
+0
TLDR:self.propertyName = newValue只會增加newValue的保留計數(如果它是保留屬性)。 –
相關問題
- 1. 何時/爲什麼在使用jQuery時用「$」前綴變量?
- 2. 設置變量時使用雙引號
- 3. 設置getRange(值)時使用變量
- 4. 何時使用Setters以及何時使用Constructors來設置變量值?
- 5. 何時使用自動釋放變量?
- 6. 在自定義PHP變量上使用$ _前綴是否安全
- 7. 設置屬性值時是否需要使用臨時變量?
- 8. 使用變量變量作爲數組前綴
- 9. 前綴和後綴增量,同時比較變量
- 10. 使用變量時
- 11. 何時使用PHP的變量變量?
- 12. 使用前綴
- 13. 當在使用數組之前設置變量時,它不起作用。
- 14. 使用argv設置變量
- 15. 使用keyup設置變量()
- 16. 使用變量設置rst
- 17. 如何設置VBA變量在使用時拋出錯誤?
- 18. 如何在JQuery中設置CSS屬性時使用變量?
- 19. C#何時使用默認值設置實例變量?
- 20. 如何在vim中設置makeprg時使用變量?
- 21. 使用變量設置變量 - 批次
- 22. Sass - 使用變量設置變量
- 23. JSP使用GET變量設置變量
- 24. Perl-當我設置我使用<STDIN>供用戶在循環中設置它時,如何訪問變量?
- 25. Spring訪問配置 - 使用@Value設置變量時發生AlreadyBuiltException
- 26. 使用argparse時將環境變量設置爲位置參數
- 27. 前綴中綴使用Java
- 28. 如何在SQL Server中使用nvarchar變量爲用戶使用unicode前綴'N'?
- 29. Rails:何時使用自我
- 30. 使用C++超時後重置變量
哪裏有人說「使用自己會增加保留 計數」? – Mark
'self.propertyName = newValue'只會增加'newValue'的保留計數,如果它是保留屬性的話。使用ARC,無論如何您都不必擔心。 –
我指的是我的同事。如果它錯了,我很抱歉。我是新手 – Raj