Block變量的的用法,使你的程序看起來清晰明瞭!

  1. <span style="font-size:24px;">爲什麼要使用block變量呢?  

  2. 因爲當我們的程序比較繁雜的時候,我們在一個函數中要調用一個函數,還需要在外邊來定義,實現,很不方便,但是有了block變量我們就可以在一個函數的內部來定義一個block變量,相當於又在函數的內部來定義了一個函數.  

  3. int (^max)(int x,int y) = ^(int x,int y)//求兩個數的最大值  

  4.         {  

  5.             return x > y ? x :y;  

  6.         };  

  7.         NSLog(@"%d",max(5,10));  

  8.         int (^min)(int x,int y) =^(int x,int y)//求兩個數的最小值  

  9.         {  

  10.             return x > y ? y : x;  

  11.              

  12.         };  

  13.         NSLog(@"%d",min(5,10));</span>  

[cpp] view plaincopy在CODE上查看代碼片派生到我的代碼片

  1. <pre name="code" class="cpp"><span style="font-size:24px;">其中block變量的類型爲:int(^)(int x ,int y);  

  2. max 爲變量名,一般看函數是什麼類型,只需要把函數名去掉然後剩下的就是函數的類型.  

  3. ^(int x ,int y)  

  4. {   

  5.      return x + y;  

  6. }  

  7. 上面的對block變量進行初始化.</span>  


[cpp] view plaincopy在CODE上查看代碼片派生到我的代碼片

  1. <span style="font-size:24px;">當在block內部使用block外部定義的局部變量時,如果變量沒有被__block修飾,則在block內部是隻讀的,不能對它修改,如果想修改,變量前必須要有__block修飾  

  2. __block的作用是告訴編譯器,在編譯時在block內部不要把外部變量當做常量來使用,還是當做變量來使用.  


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章