您好,登錄后才能下訂單哦!
隨著iOS系統的廣泛應用,block也越來越火,現在也基本上普遍了,但是在應用的時候總會遇到點什么問題,那么不知道大家是不是知道都會出現哪些問題呢?就這一問題講解一下,總結一下block開發應該注意的事。
一、內聯(inline)Block
就是將block嵌入到一個函數中
舉例說明:
二、要注意的地方
1、內聯的block中內部定義的變量自己本身有讀寫權限
2、block內部要修改外部變量需要將外部變量聲明__block
3、Blockretain是無效的,如果要想留住block生命周期,可以用copy來實現,記得release
4、被block的應用的對象,retainCount會自動加1,如果要想破解retaincircle,在對象前加__block,這樣block塊就不會維護這個對象了
下面的寫法如果不加上_blocka無法dealloc
5、在獨立的block中不能引用self,如果需要訪問可以使用參數傳遞的方法(可以把其考慮成c+中參數傳入函數指針對應copy)**
6、不要隨便用.語法
順便說一下,本人是iOS培訓講師,希望有興趣的同行們和學生們相互關注,相互溝通,相互學習。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。