美文网首页
第二章 2.2.4 __block说明符

第二章 2.2.4 __block说明符

作者: MrSYLong | 来源:发表于2018-08-01 22:42 被阅读5次

    上一节截获自动变量值,只能保存在执行Block语法时表达式中使用的外部自动变量瞬间的值,保存后不能修改外部自动变量的值。
    想要在Block语法的表达式中修改外部自动变量的值,需要自动变量附加__block说明符。

    __block int val = 1;
    
    void (^blk) (void) = ^void (void) {
        val = 5;
    };
    
    printf("val = %d\n",val);
    
    blk();
    
    printf("val = %d\n",val);
    
    输出:
    val = 1
    val = 5
    
    说明:
    使用附有__block说明符的自动变量可在Boclk中被赋值修改,这样的变量称为__block变量。
    

    相关文章

      网友评论

          本文标题:第二章 2.2.4 __block说明符

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