本文介绍: isa指针是什么?isa指针指向的是类对象,类对象全局只有一个,因此每个类创建出来的对象都会保存类对象的地址,也就是isa,通过isa就可以查询到这个对象的属性和方法,协议等;isa数据结构如下:可以看出isa是一个联合体类型的数据;属性有Class 类型指针cls,和uint类型的bits,以及结构体;可以看出这个联合体isa的内存是8个字节union isa_t { isa_t() { } isa_t(uintptr_t value) : bits(value) { }
isa指针是什么?
isa指针保存着指向类对象的内存地址,类对象全局只有一个,因此每个类创建出来的对象都会默认有一个isa属性,保存类对象的地址,也就是class,通过class就可以查询到这个对象的属性和方法,协议等;
isa数据结构如下:
可以看出isa是一个联合体类型的数据;
属性有Class 类型指针cls,和uint类型的bits,以及结构体;
可以看出这个联合体isa的内存是8个字节
最关键的是ISA_BITFIELD这个数据结构,是个宏定义,里面有几个属性,
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。