//動態(tài)創(chuàng)建類
//1.使用objc_allocateClassPair創(chuàng)建一個類Class
const char *className = "Person";
Class class = objc_getClass(className);
if(!class){
Class superClass = [NSObject class];
class = objc_allocateClassPair(superClass, className, 0);
}
//2.現(xiàn)在可以使用自定義的Person類
id instance = [[class alloc] init];
//3.給instance類添加一個屬性name,并且賦值
objc_setAssociatedObject(instance, "name", @"Victor John", OBJC_ASSOCIATION_COPY_NONATOMIC);
//給description屬性設(shè)置
objc_setAssociatedObject(instance, "description", @"Person類的description", OBJC_ASSOCIATION_COPY_NONATOMIC);
//4.然后獲取值
id name = objc_getAssociatedObject(instance, "name");
id description = objc_getAssociatedObject(instance, "description");
//5.輸出打印
NSLog(@"Person=%p, name=%@ ,description=%@", class, name, description);