我想知道self.object
和self->object
之間的區別是什麼?我們如何能夠使用self
在ARC中釋放內存?self.object和self> object之間的區別
0
A
回答
3
self
是一個指針,所以self->object
正確引用object
。然而
self.object
是[self object]
Objective-C的語法糖並調用getter方法(-(Object *)object
)(或setter方法[self setObject:]
如果您正在分配)。
如果您使用的是ARC,那麼您並不需要做任何事情來釋放內存。
0
self.object
調用setter方法,它執行內存管理,如保留對象。 self->object
設置/直接訪問不執行任何內存管理的對象。通常你不想直接訪問一個對象的伊娃,所以只需爲object
創建setter/getters並使用self.object
。
相關問題
- 1. [Object,Object]和Array之間的區別(2)
- 2. Objects.hashCode()和new Object()。hashCode()之間的區別?
- 3. object.variable和object-> variable之間的區別
- 4. Object,Object和[1:Object,2:Object]之間有什麼區別?
- 5. object [] = object [] f = new object []和var f = new []之間的區別?
- 6. 對象之間的區別o = makeMeAnObjectPlease();和Object o = new Object();
- 7. C++中object和object()之間的區別是什麼
- 8. assert object!= null和Assert.assertNotNull(object)之間有什麼區別?
- 9. Object()和Object {}的區別{}
- 10. Java中的類<?>和類<Object>之間的區別
- 11. C#中new object()和new {}之間的區別是什麼?
- 12. Obj-C中[object variable]和object.variable之間的區別?
- 13. 列表<T>和列表<object>之間的區別?
- 14. VBA中Long和Object數據類型之間的區別
- 15. 類foo,類foo()和類foo(object)之間的區別?
- 16. SwingUtilities.invokeLater和SwingWorker之間的區別<Void,Object>?
- 17. 之間的〜/和的區別../
- 18. '#','%'和'$'之間的區別
- 19. {!!之間的區別!!}和{{}}
- 20. '+ ='和'= +'之間的區別?
- 21. 「。+」和「。+?」之間的區別
- 22. .eq之間的區別。和==
- 23. #。/和#之間的區別。 ./
- 24. !=和!之間的區別==
- 25. 「%〜dp0」和「。\」之間的區別?
- 26. | =和^ = css之間的區別
- 27. 之間的區別。和#
- 28. ==和case之間的區別?
- 29. 「**/* /」和「** /」之間的區別?
- 30. jQuery - '。'之間的區別和「#」