您何時必須在iPhone SDK中使用@property
和@synthesize
?爲什麼使用@property
和@synthesize
? 我正在學習財產,但我無法得到一個正確的想法。舉例來說明這一點是什麼?什麼時候你必須在iPhone SDK中使用@property和@synthesize?
0
A
回答
3
@property:你使用它時,你想:
你可以使用一些像非原子,atmoic,保留真正有用的生成的代碼,而無需編寫任何代碼。你也有getter和setter方法。要使用它,你有兩種方法:@synthesize或@dynamic:@synthesize,編譯器會自動爲你生成getter和setter,@dynamic:你必須自己編寫它們。
@property對於內存管理非常有用,例如:retain。
如何保留沒有@property?
if (_variable != object) {
[_variable release];
_variable = nil;
_variable = [object retain];
}
如何將它與@property一起使用?
self.variable = object;
當你調用上面的線,你居然叫喜歡[自我setVariable:對象]二傳手然後將生成的setter方法做它的工作
2
@property(與@synthesize一起)自動生成set
和/或get
的代碼。所以下面的代碼:
self.prop = @"some string";
相當於
[self setProp: @"some string"];
還要注意,
self.prop = @"some string";
是從
prop = @"some string";
後者套不同的變量直接的,而前者稱爲方法getProp
設置變量prop
。
相關問題
- 1. @property和@synthesize
- 2. 何時需要@property和@synthesize?
- 3. 你什麼時候明確地必須在iPhone上實例化UINavigationController?
- 4. @property和@synthesize有什麼意義?
- 5. @property和@synthesize有什麼區別?
- 6. @property和@synthesize:爲什麼這兩個?
- 7. 使用@property和@synthesize時防止泄漏
- 8. 什麼時候應該使用@property?
- 9. @property @synthesize
- 10. 什麼時候必須圍繞try/catch?
- 11. Objective-C中使用的@property和@synthesize是什麼?
- 12. 關於@property和@synthesize
- 13. 你什麼時候使用getGraphObject和getGraphEdge
- 14. 我們什麼時候在iPhone SDK中使用@class
- 15. 關於產品@property和@synthesize
- 16. 使用@property和@synthesize的任何錯誤
- 17. 我什麼時候必須使用scikit的fit方法學習?
- 18. 什麼時候我必須使用boost :: asio:strand
- 19. 什麼樣的代碼我必須在OnCreate()和什麼時候我必須把它放在OnCreateView()?
- 20. 什麼時候必須在Tensorflow中初始化變量?
- 21. 你什麼時候使用新方法?
- 22. 你什麼時候使用jqGrid no_legacy_api = false?
- 23. Symfony sfFormFilters - 你什麼時候使用它?
- 24. 你什麼時候可以使用uint_least16_t
- 25. 你什麼時候使用std :: unordered_map :: emplace_hint?
- 26. 你什麼時候使用mmap
- 27. 什麼是PostgreSQL函數,什麼時候我必須使用它們?
- 28. 在c中實現字符串隊列我什麼時候必須使用malloc
- 29. 什麼時候我們必須在C#中使用extern別名關鍵字?
- 30. 什麼時候我們必須在C#中使用checked運算符?
快速旁註 - 如果您在保留沒有@property的情況下,請確保並檢查自我分配! if(variable_!= object)[variable_ release]; 否則,您可能會最終釋放唯一對該對象的引用,並在釋放後調用retain以保持不良。 – 2010-08-03 08:00:08
啊是的,這是正確的 – vodkhang 2010-08-10 05:29:49
我想用一些特定的情況下使用iPhone SDKd – harlram 2010-08-10 05:34:31