ios小技巧

ios小技巧

1. 通过runtime的关联对象给对象额外增加实例。
关联对象,很聪明的做法就是使用_cmd指针作为key,不用再额外维护一个字符或其他对象。

1
2
3
objc_setAssociatedObject(self, _cmd, value, OBJC_ASSOCIATION_RETAIN);

objc_getAssociatedObject(self, _cmd)

2. JS中实现的消息转发

3.关键字typeof()

1
__weak typeof(self) weakSelf = self;

4.objectForKeyedSubscript:

实现了这个方法,就能以 a[key] 的形式来取值。

5.

#if !__has_feature(objc_arc)
#error  does not support Objective-C Automatic Reference Counting (ARC)
#endif

通过这个宏来判断该文件是否支持ARC,如果不支持ARC,则报错。