装逼技能 - @macro 方法的调用

96
Dennis_me
2015.08.18 18:31* 字数 210

装逼场景1

@onExit{

    free(properties);

};

装逼场景2

@weakify(self);

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

    @strongify(self);

    self.outputLabel.text = name;

}];

好了,到这里如果大神知道如何装逼的就不要往下看了。😄

不知道的,我就要开始教大家装逼了 😄

技能介绍


我们来看看 onExit的宏定义,这是来自Mantle的代码

#define onExit \

try {} @finally {} \

__strong mtl_cleanupBlock_t metamacro_concat(mtl_exitBlock_, __LINE__) __attribute__((cleanup(mtl_executeCleanupBlock), unused)) = ^


注意一下try {} @finally {},正常情况下我们应该是@try{}@finally{},这里少了个@,好了,装逼技能到此为止。在这里你就可以使用@前缀了。。。。。。

总结

被编译器会对空的try-catch优化,所以没啥性能损耗。而且@前缀更加显眼哦~



我的微博:微博地址

Objective-C 小技巧
Web note ad 1