记录一下自己探究对象初始化的过程🔽
int main(int argc, const char * argv[]) {
@autoreleasepool {
WSPerson *person = [WSPerson alloc]; NSLog(@"%p",person);
} return 0; } 断点到person,然后设置断点到底层的代码callAlloc到了下图位置
到了第一个断点,然后到了调用 点击这个 _objc_rootAllocWithZone 进入底层的实现,
再点击
通过上图的流程 整个初始化的大概流程就是