#import <Foundation/Foundation.h>
int main(int argc,char *argv[])
{
@autoreleasepool{
int foo =10;
void (^printFoo)(void)=
^(void){
NSLog(@"foo=%i",foo)
};
foo=15;
printFoo();
}
return 0;
}
输出结果: Foo=10; 输出结果是10不是15是因为变量在定义块的同时已经具有值了,而不是在块执行的时候。