当前位置:主页 > 移动开发 > iOS代码 >

iOS在Block中修改外部变量值的实现代码

时间:2021-06-12 08:18:14 | 栏目:iOS代码 | 点击:

一,代码。

- (void)viewDidLoad {
  [super viewDidLoad];
  // Do any additional setup after loading the view, typically from a nib.
  // 第一种是可以修改 static 全局变量;第二种是可以修改用新关键字 __block 修饰的变量。
  __block int blockLocal = 100;
  static int staticLocal = 100;
  void (^aBlock)(void) = ^(void){
    blockLocal++;
    staticLocal++;
  };
  NSLog(@"----blockLocal--%d",blockLocal);
  NSLog(@"---staticLocal--%d",staticLocal);
  aBlock();
  NSLog(@"----blockLocal--%d",blockLocal);
  NSLog(@"---staticLocal--%d",staticLocal);
}

二,输出。

2015-10-23 13:15:30.598 在Block中修改外部变量的值[7561:195731] ----blockLocal--100
2015-10-23 13:15:30.598 在Block中修改外部变量的值[7561:195731] ---staticLocal--100
2015-10-23 13:15:30.598 在Block中修改外部变量的值[7561:195731] ----blockLocal--101
2015-10-23 13:15:30.598 在Block中修改外部变量的值[7561:195731] ---staticLocal--101

总结

您可能感兴趣的文章:

相关文章