标签:
一:在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline运行时使用的,并且它对局部变量是只读的;而在c语言中函数指针是在编译时就运行。
int (^myBlock)(int ,int) = ^(int a, int b){return a ;};
等号左边表示block的定义 ,右边表示 block的实现体
左边 int 表示 返回值类型 myblock 表示创建的block对象 传入两个int行的参数
右边表示 传入参数a和b;大括号里面表示block代码块的实现
下面时三种类型的举例说明:
1:无返回值,无参数
输出结果为:
2 :无返回值 有参数
输出结果为:
类型三:有返回值,有参数
输出结果为:
这就是三种block形式的定义与使用 之后再给大家总结block的回调。
标签:
原文地址:http://www.cnblogs.com/hlh--123/p/5021325.html