OC中 block 的簡單使用

block的作用

  • block是塊,一般來說,在 block 中用的變量值是被複制過來的,所以對於變量本身的修改並不會影響這個變量的真實值。
  • block封裝了一段代碼,可以在任何時候執行
  • block可以作爲函數或者函數的返回值,而本身又可以帶輸入參數或返回值
  • block在多線程,異步任務,集合遍歷,集合排序,動畫專場用得多

代碼示例

int main(int argc, char * argv[]) {
    @autoreleasepool {
        //void爲返回值
        //(void)說明沒有傳參
        void (^myBlock)(void) = ^{
            NSLog(@"myBlock");
        };
        myBlock();//運行block
        //定義一個求和block
        //返回值爲int,參數爲兩個int
        int (^sumBlock)(int, int) = ^(int x, int y){
            return x + y;
        };
        int sum;
        sum = sumBlock(1, 5);
        NSLog(@"sum = %d", sum);
    }
}

運行結果

在這裏插入圖片描述

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