iOS block的一些總結

一 ,block 的定義格式

返回值類型(^block變量名)(形參列表) = (形參列表) {

};

默認情況下,block內部是不能修改外面的局部變量, block內部可以修改使用__block修飾的局部變量.

block的模式

1. 無參數無返回值的block

void(^dosomething)() = ^(){

nslog(@"dosomething");

};

dosomething();

2. 有參數無返回值的block

void(^dosomething)(int,int)= ^(int a, int b){

nslog(@"%d + %d", a+b);

}

dosomething(10,10);

3.有參數有返回值的block

nsstring *(^logblock)(nsstring *, nsstring *) = ^(nsstring *A, nsstring *B){

return [nsstring stringwithFormat:@"%@ %@",A,B];

};

nslog(@"%@", logblock(@"hello", @"你好"));

4 block 結合typedef使用

typedef void(^changecolor)(id);

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 簡述 一句話搞懂block:可以理解為,block是對上下文代碼段的打包,然后在適當的時機執行。 block長什么...
    Allan_野草閱讀 2,178評論 0 25
  • 前言 Blocks是C語言的擴充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了這...
    小人不才閱讀 3,787評論 0 23
  • 轉自李峰峰博客 一、概述 閉包 = 一個函數「或指向函數的指針」+ 該函數執行的外部的上下文變量「也就是自由變量」...
    Joshua520閱讀 1,020評論 0 0
  • 01-常量與變量 學習swift第一步打印Hello World print("Hello World") swi...
    iOS_恒仔閱讀 5,223評論 2 19
  • 如果懂得調整節奏,身體自然就會積蓄力量。 節奏來自萬有引力,潮起潮落,波浪起伏,花開花謝,早晨夜晚。 身體受自然的...
    陳奕奕閱讀 727評論 0 0