iOS面试题+基础知识

iOS开发(3)OC对象的本质

2019-03-31  本文已影响121人  迷心迷

一、Objective-C的本质

二、OC对象的本质

3.png 5.png 6.png

三、实时查看内存数据

8.png

四、2个容易混淆的函数

#import <objc/runtime.h>
class_getInstanceSize([NSObject class]);
#import <malloc/malloc.h>
malloc_size((__bridge const void *)obj);

五、常用LLDB指令

格式
x是16进制,f是浮点,d是10进制

字节大小
b:byte 1字节,h:half word 2字节
w:word 4字节,g:giant word 8字节

六、面试题

一个NSObject对象占用多少内存?
系统分配了16个字节给NSObject对象(通过malloc_size函数获得)
但NSObject对象内部只使用了8个字节的空间(64bit环境下,可以通过class_getInstanceSize函数获得)

上一篇 下一篇

猜你喜欢

热点阅读