所以永遠不該呼叫 對象的 dealloc 方法
1,alloc, allocWithZone,new(帶初始化)
為對象分配內存,retainCount為“1”,並返回此實例
2,release
retainCount 減“1”,減到“0”時調用此對象的dealloc方法
3,retain
retainCount 加“1”
4,copy,mutableCopy
複製一個實例,retainCount數為“1”,返回此實例。所得到的對像是與其它上下文無關的,獨立的對象(乾淨對象)。
5,autorelease
在當前上下文的AutoreleasePool棧頂的autoreleasePool實例添加此對象,由於它的引入使Objective-C(非GC管理環境)由全手動內存管理上升到半自動化。
為對象分配內存,retainCount為“1”,並返回此實例
2,release
retainCount 減“1”,減到“0”時調用此對象的dealloc方法
3,retain
retainCount 加“1”
4,copy,mutableCopy
複製一個實例,retainCount數為“1”,返回此實例。所得到的對像是與其它上下文無關的,獨立的對象(乾淨對象)。
5,autorelease
在當前上下文的AutoreleasePool棧頂的autoreleasePool實例添加此對象,由於它的引入使Objective-C(非GC管理環境)由全手動內存管理上升到半自動化。
詳細參考文章:參考文章
沒有留言:
張貼留言