oc記憶體管理

2021-07-06 06:13:24 字數 349 閱讀 4643

7objc的記憶體管理 

?? 如果您通過分配和初始化(比如[[myclass alloc] init])的方式來建立物件,您就擁

有這個物件,需要負責該物件的釋放。這個規則在使用nsobject的便利方法new 時也同樣適用。

?? 如果您拷貝乙個物件,您也擁有拷貝得到的物件,需要負責該物件的釋放。

?? 如果您保持乙個物件,您就部分擁有這個物件,需要在不再使用時釋放該物件。

反過來,

?? 如果您從其它物件那裡接收到乙個物件,則您不擁有該物件,也不應該釋放它(這個規則有少數

的例外,在參考文件中有顯式的說明)。

Oc 記憶體管理

1 對你自己擁有的物件負責,你只能釋放你擁有的物件 2 凡是你通過 retain alloc copy等手段獲得了所有者的物件,都必須在你不使用的時候來呼叫release autorelease等手段來釋放對他的所有權 3 在一定的 段內,對同乙個物件所作的copy alloc retain的操作次...

OC記憶體管理

1.記憶體管理原則 如果對乙個物件使用了alloc mutable copy retain,那麼你必須使用相應的release或者autorelease。2.管理範圍 任何繼承了nsobject 的物件,對其他基本資料型別 int char float double struct enum等 無效 ...

OC 記憶體管理

管理範圍 任何繼承nsobject的物件,對其他的基本資料型別無效。判斷物件要不要 的唯一依據就是計數器是否為0,若不為0則存在。所以對記憶體的管理就是對計數器的管理 1 retain 計數器 1,會返回物件本身 2 release 計數器 1 沒有返回值 3 retaincount 獲取當前的計數...