ARC 內(nèi)存管理的思考方式

1.自己生成的對象,自己持有

2.非自己生成的對象,自己也能持有

3.不再需要自己持有的對象時釋放

4.非自己持有的對象無法釋放

引用計數(shù)式內(nèi)存管理的思考方式僅此而已。按照這個思路,完全不必考慮引用計數(shù)。

OC的內(nèi)存管理方法,不包含在語言中,而是包含在Cocoa框架中,其Foundation框架類庫的NSObject類擔(dān)負(fù)內(nèi)存管理的職責(zé)。

使用一下名稱開頭的方法名意味著自己生成的對象只有自己持有:

1.alloc

2.new

3.copy

4.mutableCopy

除此之外的方法生成的對象不是自己持有的,可以使用retain讓自己持有,但有義務(wù)release。

-(id)object{

idobj=[[NSObjectalloc]init];

[objautorelease];

//取得的對象存在,但不是自己擁有

returnobj;

}

釋放非自己持有的對象會造成崩潰

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容