iOS面试

NSObject对象在内存中占用多大空间

2019-11-09  本文已影响0人  cf87744ea7b3
NSObject *obj = [[NSObject alloc] init];
struct NSObject_IMPL {
    Class isa;
}

obj作为指向结构体的指针,在内存空间中占用的是8个字节。

size_t instanceSize(size_t extraBytes) {
    size_t size = alignedInstanceSize() + extraBytes;
    // CF requires all objects be at least 16 bytes.
    if (size < 16) size = 16;
    return size;
}

对象本身占用的是8个字节
系统分配的是16个字节

我们也可以通过#import <objc/runtime.h>class_getInstanceSize()方法和#import <malloc/malloc.h>malloc_size()方法来查看具体的内存大小

上一篇 下一篇

猜你喜欢

热点阅读