如何在block内部修改外部变量

默认状况下,在block中访问的外部变量是复制过去的,即:写操做不对原变量生效。可是你能够加上 __block 来让其写操做生效,示例代码以下:web __block int a = 0; void (^foo)(void) = ^{ a = 1; }; foo(); //这里,a的值被修改成1 你一样能够在面试中这样回答,但你并无答到“点子上”。真正的缘由,并无书这本书里写的这么
相关文章
相关标签/搜索