iOS基础知识Objective-C RunTime

runtime源码环境配置

2019-03-15  本文已影响5人  来自蒙塔基的钢蛋儿

最近在看runtime底层源码,官方的下载各种报错,找到了报错的处理方式,并附带Demo地址


转载地址:https://www.jianshu.com/p/bbafd02ad0bb 感谢作者

1.最新Runtime源码objc4-750编译
2.objc - 编译Runtime源码objc4-680

image

使用:

image image

我们在自己建的工程 main.m 文件里

#import <Foundation/Foundation.h>
#import <objc/runtime.h>
#import <malloc/malloc.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSObject *obj = [[NSObject alloc] init];

        //获得NSObject实例对象的成员变量所占用的大小 >> 8
        NSLog(@"%zd", class_getInstanceSize([NSObject class]));

        //获得obj指针所指向内存的大小 >> 16
        //malloc_size(const void *ptr):Returns size of given ptr
        NSLog(@"%zd", malloc_size((__bridge const void *)obj));
    }
    return 0;
}


Demo下载地址

上一篇 下一篇

猜你喜欢

热点阅读