关于_cmd
实际上是该方法名(@selector的名称)。
比如:
- (void)someCategoryMethod { NSString *string = objc_getAssociatedObject(self, _cmd); if(!string){ string = @"string"; objc_setAssociatedObject(self, _cmd, string, OBJC_ASSOCIATION_COPY_NONATOMIC); } }
_cmd实际上是someCategoryMethod
。