block截获局部变量

作者: ch12342 | 来源:发表于2018-02-27 18:02 被阅读15次

        id arr = [[NSMutableArrayalloc]init];

        void(^block) (void) = ^(){

            [arraddObject:@"1"];

        };

        block();

    //这样,只是使用arr是没有问题的.

        id arr = [[NSMutableArrayalloc]init];

        void(^block) (void) = ^(){

            arr = [[NSMutableArray alloc] init];

        };

        block();

    //会报错,Variable is not assignable (missing __block type specifier),因为这时候,block内部对arr进行了赋值

    相关文章

      网友评论

        本文标题:block截获局部变量

        本文链接:https://www.haomeiwen.com/subject/aqvmxftx.html