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

Gretel ·
更新时间:2024-11-14
· 563 次阅读

一,代码。

- (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

总结

以上所述是小编给大家介绍的iOS在Block中修改外部变量值的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持!

您可能感兴趣的文章:iOS中Block的回调使用和解析详解iOS面试中如何优雅回答Block导致循环引用的问题iOS利用Block逆向传值的方式详解一篇文章让你看懂IOS中的block为何再也不需要WeakSelf弱引用IOS 使用Block二次封装AFNetworking 3.0详解iOS通过逆向理解Block的内存模型iOS通过block在两个页面间传值的方法iOS Block解开多年以来一直的误解iOS中block变量捕获原理详析iOS调试Block引用对象无法被释放的小技巧分享



block IOS 变量

需要 登录 后方可回复, 如果你还没有账号请 注册新账号