ReactiveCocoa中weakify与strongify的作用

@weakify(Obj)  @strongify(Obj)

这对宏在 RACEXTScope.h 中定义,RACFramework好像没有默认引入,需要单独import

他们的作用主要是在block内部管理对self的引用:

@weakify(self);//定义了一个__weak的self_weak_变量

[RACObserve(self, name) subscribeNext:^(NSString *name) {

@strongify(self);//局域定义了一个__strong的self指针指向self_weak        self.outputLabel.text = name;

}];

这个宏为什么这么吊,前面加@,其实就是一个啥都没干的@autoreleasepool {}前面的那个@,为了显眼罢了。

这两个宏一定成对出现,先weak再strong

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容