代码块 block

代码块block讲解:

http://blog.csdn.net/totogo2010/article/details/7839061

block深入学习:

http://www.cnblogs.com/studentdeng/archive/2012/02/03/2336863.html

block学习详细:

http://geeklu.com/2012/01/block/

Apple官方讲解:

http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOSCh/chapters/WriteObjective-CCode/WriteObjective-CCode/WriteObjective-CCode.html

基本语法包括:

  • 声明Block变量
  • 为Block变量赋值
  • 声明Block类型(typedef)
  • 直接匿名调用Block
  • __block关键字的使用


代码块block

1、代码块本质上与变量一样,都在函数中声明然后使用,只不过一个变量中存储一个值,一个代码块存储一个函数体(一段代码);

2、代码块的定义:有返回值,有参数,有变量名;
3、__block关键字 修饰局部变量,使局部变量变得特殊,可以在block代码块中使用:

  • 把全局变量和局部变量作为参数传递到一个函数中,这个变量会copy一份传入到函数,函数中做的操作不会影响变量的值(根本就是两个东西)。
  • 把全局变量和局部变量作为参数传递到一个代码块中,局部变量必须要__block来修饰,用来告诉编译器这个局部变量有些特殊可以在代码中使用,这些变量在代码块中使用就是本来的变量。

相关推荐