原文地址:https://www.jianshu.com/p/1faf2d78136c探索底层原理,积累从点滴做起。大家好,我是闻闻。往期回顾iOS底层原理探索—OC对象的本质iOS底层原理探索—class的本质iOS底层原理探索—KVO的本质iOS底层原理探索—KVC的本质iOS底层原理探索—Category的本质(一)iOS底层原理探索—Category的本质(二)iOS底层原理探索—关联对象的本质iOS底层原理探索—block的本质(一)iOS底层原理探索—block的本质(二)iOS底层原理探索—Runtime之isa的本质iOS底层原理探索—Runtime之class的本质iOS底层
原文地址:https://www.jianshu.com/p/1faf2d78136c探索底层原理,积累从点滴做起。大家好,我是闻闻。往期回顾iOS底层原理探索—OC对象的本质iOS底层原理探索—class的本质iOS底层原理探索—KVO的本质iOS底层原理探索—KVC的本质iOS底层原理探索—Category的本质(一)iOS底层原理探索—Category的本质(二)iOS底层原理探索—关联对象的本质iOS底层原理探索—block的本质(一)iOS底层原理探索—block的本质(二)iOS底层原理探索—Runtime之isa的本质iOS底层原理探索—Runtime之class的本质iOS底层
1.准备源码程序源码分析alloc&init&new的流程,使用从github上下载的LGCooci的源码https://github.com/LGCooci/KCCbjc4_debug。因为设备限制,我是基于818的源码进行学习。从github下载完成后,在KCObjcBuild所在的目录新建一个OC类命名为Person,Person类中什么都不写。在main.m中写入如下代码:#import"Person.h"Person*p1=[Personalloc];Person*p2=[p1init];Person*p3=[p1init];NSLog(@"%@-%p-%p",p1,p1,&p1);
1.准备源码程序源码分析alloc&init&new的流程,使用从github上下载的LGCooci的源码https://github.com/LGCooci/KCCbjc4_debug。因为设备限制,我是基于818的源码进行学习。从github下载完成后,在KCObjcBuild所在的目录新建一个OC类命名为Person,Person类中什么都不写。在main.m中写入如下代码:#import"Person.h"Person*p1=[Personalloc];Person*p2=[p1init];Person*p3=[p1init];NSLog(@"%@-%p-%p",p1,p1,&p1);