092.Block And Var 块中修改局部变量

来源:互联网 发布:淘宝网收藏店铺代码 编辑:程序博客网 时间:2024/06/13 09:30
---------------  main.m  ---------------
#import<Foundation/Foundation.h>

intmain()
{
   
int a = 20;
   
__block int b = 20;
   
   
void (^printMy)(void) = ^(void)
    {
        // a = 30;  // 不能修改外面的局部变量
        b =30;    // 可以修改外面的局部变量
       NSLog(@"a:%d , b:%d", a , b);
    };

    a =45;     // 修改a的值
    b =45;     // 修改b的值
    printMy(); // 修改b的值
   NSLog(@"a%d, b%d", a , b);
}

一、编写本节代码的具体步骤:
1.参照003节的代码编写步骤。

二、本节代码涉及到的知识点:
1.局部变量用__block修饰过之后,就可以在块中直接访问且修改这个局部变量的值了。
2.上面代码的倒数第二句中,局部变量b的值会再次被修改。
0 0
原创粉丝点击