__weak typeof(self)weakself = self 是arc下用的
__block typeof(self)bself = self 是mrc下用的
一般在block中使用,因為block對於其變數都會形成strong reference,自動retain計數器加1,對於self也會形成strong reference,而如果self本身對block也是 strong reference的話,就會形成 strong reference 迴圈引用,從而造成記憶體洩露,為了防止這種情況發生,在block外部應該建立乙個week(__block) reference。
所以在block內如果有self的話,一般都會在block外面加一句_block typeof(self)bself = self;
eg:
__block typeof(self) bself = self;
[self methodthattakesablock:^
iOS專案小筆記
載入類的時候呼叫,當程式一啟動的時候就會呼叫 void load 當類或者其他子類第一次使用的時候呼叫 void initialize 獲取當前應用下得所有導航條描述多個控制器選擇用storyboard,描述乙個控制器用xib。在設定介面時,uiview和控制的選擇,需要與客戶互動用控制器,不需要互...
怎麼學演算法的小筆記
演算法是很頭疼的事情,那就說明需要很好的方法和思路了,下面有一些做法可以借鑑的。1.為了不忘記,需要對一系列的內容寫成blog,用自己的話來表達。2.需要對乙個問題進行抽象和本質的思考。3.學習如何對乙個東西的分析思路,而不是被具體的步驟所迷惑。4.自mind hacks,未經通知,直接偷來了,希望...
iOS 小技巧筆記(持續更新)
巨集 define rgb a,b,c uicolor colorwithred a 255.0 green b 255.0 blue c 255.0 alpha 1.0 自定義 rgb 顏色 define kscreenwidth uiscreen mainscreen bounds.size.w...