在代碼,我繼承,我已經看到了以下內容:爲IBOutlet Work的只讀屬性是否會更好?
@property (readonly) IBOutlet UIImageView * bgImage;
當我想到一個保留的內存模型,如:
@property (readonly, retain) IBOutlet UIImageView * bgImage;
我很困惑,爲什麼第一屬性定義工作不會造成問題。
此外,還有在一個dealloc中作爲release
你所期望的一樣:
-(void)dealloc
{
[_bgImage release];
[super dealloc];
}
我會很感激,如果有人能想出這種解釋。我已經和最初的開發者談過了,他正在嘗試寫出更簡潔的代碼,這就是爲什麼他在內存模型中忽略了retain
(似乎不必要)。
我不知道是否IBOutlet基本上對待像伊娃IBOutlet聲明,因爲它是隻讀的(沒有設置使用,因此默認分配內存模型沒有區別)。
如果IBOutlet中從未預期發生變化,會使用一個只讀屬性,無記憶模式實際上是定義性的最好方法是什麼?
'這個出口是否被聲明爲保留或分配,另一端的對象是否被帶有出口的對象所擁有(這不是很清楚),只有當它被設置爲'readonly'時才這樣嗎?如果它是'(分配,讀寫)'那麼肯定會使用非保留的setter,並且不會保留'' - 我只提到,因爲它是你答案的唯一部分,這有點含糊 –
我認爲是......這似乎是它所說的。 –
@ Paul.s:看到我的更新 - 我決定手工計算參考活動,結果是,我認爲,有啓發性。 –