oc45 多物件記憶體管理 優化

2021-09-22 07:40:01 字數 1089 閱讀 7793

//

//set方法的記憶體管理

#import

#import

"person.h

"#import

"room.h

"int main(int argc, const

char *ar**)

return0;

}

//

#import

#import

"room.h

"@inte***ce

person : nsobject

- (void)setroom:(room *)room;

- (room *)room;

@end

//

#import

"person.h

"@implementation

person

//當a物件想使用b物件一定要對b物件進行一次retain, 這樣才能保證a物件存在b物件就存在, 也就是說這樣才能保證無論在什麼時候在a物件中都可以使用b物件

//當a物件釋放的時候, 一定要對b對應進行一次release, 這樣才能保證a物件釋放了, b對應也會隨之釋放, 避免記憶體洩露

//總結一句話: 有增就有減

- (void)setroom:(room *)room //

room = r

}- (room *)room

- (void

)dealloc

@end

//

room.h

#import

@inte***ce

room : nsobject

@property

int no;//

房間號@end

//

room.m

#import

"room.h

"@implementation

room

- (void

)dealloc

@end

oc44 多物件記憶體管理

room.h import inte ce room nsobject property int no 房間號 end room.m import room.h implementation room void dealloc end import import room.h inte ce per...

OC中記憶體管理 MRC 多物件管理

2019獨角獸企業重金招聘python工程師標準 將以乙個精武團這個遊戲來做例子。遊戲者需要開房,那麼這個房子就這個人使用,當這個人還在這個房間的時候就不能釋放這個房間,否則這個遊戲就有個bug,同樣的道理,這個房子可以被多個人引用。那什麼時候釋放這個房子就是個關鍵 當這個房子無人使用的時候就是釋放...

OC物件記憶體管理

objective c物件記憶體管理 1,管理範圍 任何繼承了nsobject的物件,基本資料型別 int,char,float,double,struct,enum等 是不需要管理記憶體的。2,引用計數器 每個oc物件都有自己的引用計數器,是乙個整數,表示 物件被引用的次數 既有多少人正在使用這個...