第一:知道一個項目是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