关于cocoa 分类,我们经常看到这样一种说法,分类不能有自己的属性变量
先看个常见的例子
当把NSString *ptx; 写到class extension中,这样编码 ok的,不会出现任何警告和编译错误
继续看
当把NSString *ptx; 写到class category中,这样编码 直接爆红了!!!
Use of undeclared identify '_ptx' ? 这也就验证了上面的结论 分类不能有自己的属性变量
继续 (传说过 objective-c 是一门真正的动态语言)
由于objc_getAssociatedObject 和 objc_setAssociatedObject 这2个c函数 定义在runtime.h中
你需要#import <objc/runtime.h>