block

来源:互联网 发布:php手机论坛 编辑:程序博客网 时间:2024/06/03 17:36
Block与函数的区别

1定义方式不同

2block是一个类型,函数只是函数

3函数不可以嵌套定义,但是block可以嵌套

4block是数据类型,可以作为函数的参数和返回值,

Block是一个c级别的语法和运行机制,它与标准的c函数类似,不同之处在于,他除了有可执行代码以外,它还包含了与堆,栈内存绑定的变量,因此,block对象包含了一组状态数据,这些数据在程序执行时用语对行为产生影响。


用^操作符声明一个block变量,并指明Block数据的开始,Block的主体部分包含在{}内


Block是一种数据类型

返回值类型 (^变量名)(参数)= ^(参数){

                   代码块;

};

typedef 后面接变量声明

Block不可以修改变量的值   变量声明__block

block作为函数的参数

函数(block声明)

block作为函数的返回值

block类型  函数名


0 0