使用runtime 深拷贝
2016-12-11 本文已影响0人
张霸天
- (void)copy:(NSObject *)object {
unsigned int property_count = 0;
objc_property_t * propertys = class_copyPropertyList([object class], &property_count);
for (int i = 0; i < property_count; i++) {
objc_property_t property = propertys[i];
const char * property_name = property_getName(property);
NSString * property_name_string = [NSString stringWithUTF8String:property_name];
[self setValue:[object valueForKey:property_name_string] forKey:property_name_string];
}
free(propertys);
}