专栏名称: Adrenine
iOS开发
目录
相关文章推荐
51好读  ›  专栏  ›  Adrenine

iOSSharing #6 | 2019-04-28

Adrenine  · 掘金  ·  · 2019-04-28 17:19

正文

请到「今天看啥」查看全文


@interface Light : NSObject @property ( nonatomic , copy ) NSString *color; @property ( nonatomic , copy ) void (^block)( void ); @end ------------Light.m------------ #import "Light.h" @implementation Light @end ------------main.m------------ #import "Light.h" int main( int argc, char * argv[]) { @autoreleasepool { Light *loveLight = [Light alloc] init]; loveLight.color = @"green" ; loveLight.block = ^{ NSLog ( @"%@" ,loveLight.color); }; loveLight.block(); } } 复制代码

我们在上面的代码中创建了一个Light(光)类,并声明两个属性color(颜色)及block。然后我们实例化一个对象loveLight并对其属性赋值,实现并调用block,造成循环引用。 然后我们通过clang代码,了解这段代码内部的部分实现:

struct






请到「今天看啥」查看全文