码迷,mamicode.com
首页 > 移动开发 > 详细

IOS---Blcok(截获的自动变量)

时间:2015-04-24 12:35:00      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:ios   block   

先上两段代码:

//1
int val = 0;
void (^blk)(void) = ^{val = 1};
//2
id array = [[NSMutableArray alloc] init];
void (^blk)(void) = ^{
    id obj = [[NSObject alloc] init];
    [array addobject:obj];
};

稍微用过block的同学都知道,第一个程序编译时会出错,因为该程序向截获的代码赋值了(如果要负值,就需要加上_block,变为_block变量),而第二段代码就不会报错,如果用C语言来描述的话,那就是截获NSMutableArray类对象用的结构体实例指针,虽然不能赋值,但是使用是没有问题的

IOS---Blcok(截获的自动变量)

标签:ios   block   

原文地址:http://blog.csdn.net/lf644206005/article/details/45244349

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!