Blocks是C语言的扩充功能。
它是带有自动变量(局部变量)的匿名函数。
所谓匿名就是不带有名称的函数。
Blocks提供了类似C++和Objective-C类生成实例或对象来保持变量值的方法。所以所谓“带自动变量值”,就是Blocks保持自动变量的值。
Blocks中将匿名函数部分称为“Block literal”,或简称“Block”。
C语言的函数中可能使用的变量:
自动变量(局部变量)
函数的参数
静态变量(静态局部变量)
静态全局变量
全局变量
其中,在函数的多次调用之间能够传递值的变量有:
静态变量(静态局部变量)
静态全局变量
全局变量
这些变量的作用域不同,但在整个程序中,一个变量总保持在一个内存区域。多次调用函数,但这些变量总能保持不变,在任何时候以任何状态调用,使用的都是同样的变量值。
网友评论