ios - 在运行时在 objective-c 中获取类对象的大小

标签 ios objective-c malloc

我需要获取类对象的大小。例如

Class ABC
{
   NSData *data;
   UIimage *img;
   NSString *str;
}

在运行时,我为 .data 和 .img 属性赋值,例如

ABC *objABC = [ABC allc] init];
objABC.data = Mydata;
objABC.img = Myimage;
objABC.str = @"testString";

现在,我需要知道“objABC”的大小(以字节或 KB 或 MB 为单位)。

假设我创建了 100 个具有不同大小的 .image 和 .data 属性的 ABC 类对象。我试过使用 malloc_size(),但无论 .data 或 .img 的大小如何,它都会为我的所有对象返回相同的大小

我想知道 objABC 的确切大小(以 KB 为单位)。请帮忙。

最佳答案

您可以使用以下内容:

#include <objc/runtime.h>

size_t objsize = class_getInstanceSize([objABC class]);

关于ios - 在运行时在 objective-c 中获取类对象的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38122635/

相关文章:

android - 我可以使用 QT Creator 在 Windows 10 机器上同时为 Android 和 iOS 开发吗?

ios - 为什么 pod install 会改变原来的 Podfile 和 xcode 工作区?

ios - 如何在 uicollectionview 中设置我的 UIButton 标题

ios - 要在 App Store 上可用,请接受协议(protocol)、税务和银行业务中最新协议(protocol)的条款

ios - 如何向图像 iOS 添加连续正弦波掩码?

c - 我在使用字符串分配内存时遇到问题

objective-c - 百分比符号 (%) 在 Objective C 中的数学作用是什么?

ios - 无法从写入事务中注册通知 block

c - 包装 malloc 但仅适用于某些输入文件(对象和 lib)

c - 在使用 realloc 之前是否需要释放指针变量?