Block

2021-03-26  本文已影响0人  欺魄小妖

1.Block内存相关

2.Block为什么要用copy修饰 (结构体指针)

3.block为什么不用retaim

4.为什么进入block中的对象引用计数需自动加1

5.block中self的循环引用

6.循环引用的情况

void test1() {
int a = 10;
void (^block) () = ^{
NSLog(@"a is %d",a);
}
a = 20;
block();//a = 10
}

void test2() {
__block int a = 10;
void (^block) () = ^{
NSLog(@"a is %d",a);
}
a = 20;
block();// a = 20
}

void test3() {
static int a = 10;
void (^block) () = ^{
NSLog(@"a is %d",a);
}
a = 20;
block();//a = 20
}

int a = 10;
void test4() {
void (^block) () = ^{
NSLog(@"a is %d",a);
};
a = 20;
block();//20
}

上一篇 下一篇

猜你喜欢

热点阅读