程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Object-c @property的使用方法

Object-c @property的使用方法

編輯:關於C語言

Object-c @property的使用方法


property是一種代碼生成機制,能夠生成不同類型的getter/setter函數,特別是如果你想要用點(.)操作符號來存取變量的話,你就能必須使用property。


如何使用?

用法如:@property (attribute1,attribute2) float value;

這些attribute包括:

readonly-只讀,只能讀取而不能設定值(不能用setXXXX的函式)。

readwrite-可讀可寫(默認)。

assign-在設值時替換新舊變量(默認)。

retain-在設值時retain新的變量,release舊變量。

copy-在設值時copy一份新變量,release舊變量。

nonatomic-默認為atomic。

strong - 在引用計數環境下,默認為strong,與retain作用相同;

從5.0系統後引入了weak,作用與assign相似,不過當所指向對象引用為0時,自動置為nil。

前兩個只是簡單的設定變量的可讀寫性。

assign只是簡單的替換變量,通常運用在標量類型上,例如:NSInterger和CGRect,

或者(在引用計數環境)為那些你不擁有的對象,例如:delegates。

在垃圾收集環境下retain 和 assign實際上是相同的。

它的產生的setter代碼內容類似:


- (void)setValue:(float)newValue {

value = newValue;

}

還有一點非常要注意的就是,在使用property時一定要在前面帶上self(如:self.xxx),如果你不這樣做,容易造成內存洩漏。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved