OC中內存管理(ARC)--注意點及單個對象處理

第一:知道一個項目是ARC的仍是MRC的,除了項目設置裏能夠看,還有一點就是:ARC是容許寫一些MRC的retain與release包括autorelease的。指針

第二:瞭解兩個概念,強指針與弱指針code

        Person *p=[[Person alloc]init];//此處就是強指針,固然也能夠顯示的申明是強指針__strong
對象

        當一個對象只有被強指針引用時,纔不會被釋放,即無強指針引用,就人釋放。
it

        有強指針就有弱指針了,__weak修飾的指針,它引用的對象,會被當即釋放掉,就如同剛出生的嬰兒就掛了。
class

        因此要注意。
變量

第三:ARC的單個對象管理至關的簡單,不要想之前MRC什麼引用計數器,什麼retain與release的。引用

        只要記住一句就能夠,那就是無強指針指向一個對象,那麼這個對象就會被釋放。項目

//在main中寫下如下代碼
{
    Person *p=[[Person alloc]init];
}//由於出了這個}那麼它棧裏的變量p就會釋放,那麼無強指針批向對象 p,那麼這個對象就會被釋放。

重要的事情說三次:若有錯誤,歡迎指出,共同進步。co

相關文章
相關標籤/搜索