iOS培訓——block開發注意的事

隨着iOS系統的普遍應用,block也愈來愈火,如今也基本上廣泛了,可是在應用的時候總會遇到點什麼問題,那麼不知道你們是否是知道都會出現哪些問題呢?就這一問題講解一下,總結一下block開發應該注意的事。ide

1、內聯(inline)Block函數

就是將block嵌入到一個函數中學習

舉例說明:spa

145028305.jpg

2、要注意的地方指針

一、內聯的block中內部定義的變量本身自己有讀寫權限
二、block內部要修改外部變量須要將外部變量聲明__block
三、Blockretain是無效的,若是要想留住block生命週期,能夠用copy來實現,記得release
四、被block的應用的對象,retainCount會自動加1,若是要想破解retaincircle,在對象前加__block,這樣block塊就不會維護這個對象了
下面的寫法若是不加上_blocka沒法dealloc對象

145100594.jpg

五、在獨立的block中不能引用self,若是須要訪問可使用參數傳遞的方法(能夠把其考慮成c+中參數傳入函數指針對應copy)**
六、不要隨便用.語法blog

145445538.jpg

順便說一下,本人是iOS培訓講師,但願有興趣的同行們和學生們相互關注,相互溝通,相互學習。生命週期

相關文章
相關標籤/搜索