iOS Runtime之isa指针探索与object_setClass的实质
探索isa的指向
测试代码:
@interface Company : NSObject
@property (assign, nonatomic) int cid;
@end
Company *company = [Company new];
company.cid = 255;
NSLog(@"address: %p", company);
打印对象地址:
通过View Memory查看地址为0x600000db4630的内存信息:
该内存区域可以分为两个部分,前面8个字节属于isa字段,值为0x010aad2b98(从高地址向低地址读);后一个字节属于company的cid字段,值为0xff=255。