gpt4 book ai didi

在 Objective-C 中检查对象的大小

转载 作者:IT老高 更新时间:2023-10-28 11:50:11 30 4
gpt4 key购买 nike

我正在尝试查找objective-c 对象的大小。我正在使用类似于:

    NSLog(@"sizeof myObject: %ld", sizeof(*myObject));

这只是给了我指针的大小。

我做错了什么?

最佳答案

编译器只知道指针,这就是为什么要返回指针的大小。要查看分配对象的大小,请使用以下代码片段之一:

使用 ARC:

#import <malloc/malloc.h>

// ...

NSLog(@"Size of %@: %zd", NSStringFromClass([myObject class]), malloc_size((__bridge const void *) myObject));

没有 ARC:

#import <malloc/malloc.h>

// ...

NSLog(@"size of myObject: %zd", malloc_size(myObject));

Mike Ash 在他的问答博客上写了一篇关于 Obj-C 运行时内部的文​​章:http://mikeash.com/?page=pyblog/friday-qa-2009-03-13-intro-to-the-objective-c-runtime.html

关于在 Objective-C 中检查对象的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/761969/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com