![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
runtime
liyu.info
liyu.info
展开
-
runtime(3)__attribute__((constructor))用法浅析
最近在解析iOS的Instruments文件时遇到了一些有意思的事情,在此做记录,给后来者留作参考。 看这一行代码: __attribute__((constructor)) static void _pk_extension_inject_entry(void) { 主要造成疑惑的是 __attribute__((constructor)),以前看过关于__attribute__这个关...原创 2020-05-06 15:04:32 · 401 阅读 · 0 评论 -
iOS中的SEl和IMP
SEL : 类成员方法的指针,但不同于C语言中的函数指针,函数指针直接保存了方法的地址,但SEL只是方法编号。 IMP:一个函数指针,保存了方法的地址 IMP和SEL关系 每一个继承于NSObject的类都能自动获得runtime的支持。在这样的一个类中,有一个isa指针,指向该类定义的数据结构体,这个结构体是由编译器编译时为类(需继承于NSObject)创建的.在这个结构体中有包括了指向其...原创 2020-05-06 10:25:10 · 274 阅读 · 0 评论