set方法與記憶體管理

2021-07-12 07:16:14 字數 603 閱讀 2564

區域性變數,使用完以後不再使用就release;

全域性變數,在dealloc裡面release。

指標物件要自己操作自己。

retaincount指的是物件引用計數。

self賦值方式:

computer *cmp = [[computer alloc] init];//cmp物件retaincount = 1

self.computer = cop;//computer 物件retaincount = 2

[cmp release];//computer 物件retaincount = 1

以上賦值方式等價於

self.computer = [[computer alloc] init];//computer物件retaincount = 2;易造成記憶體洩漏。**法則:當乙個物件的引用計數為0時,編譯器才會釋放該記憶體。
例項指標直接賦值

_computer =[[computer alloc]init];//retaincount = 1

set方法的記憶體管理細節

一 多個物件之間的記憶體管理 1.你想使用 占用 某個物件,就應該讓物件的計數器 1 讓物件做一次retain操作 2.你不想再使用 占用 某個物件,就應該讓物件的計數器 1 讓物件做一次release 3.誰retain,誰release 4.誰alloc,誰release 二 set方法的記憶體...

iOS複習筆記5 記憶體管理之set方法

1 alloc和release成對出現 2 set方法 2.1 基礎型別直接賦值 2.2 oc物件 判斷不等 retain新的,釋放舊的,再賦值 3 dealloc方法 3.1 一定要呼叫 super dealloc 且放在最後 3.2 self擁有的物件要做一次release inte ce bo...

set方法記憶體分析 1

這個之前的記憶體管理分析中,存在一些問題,比如說在多個物件中,要保證乙個物件沒有被系統 之前,不能被銷毀掉,就像下面的這個demo一樣,person有一輛車,但是他覺得這輛車他不喜歡了,他想換一輛車,那我有2個car的物件,該怎麼去處理這個記憶體管理的問題.import import person....