Jir*_*kup 2 reflection objective-c decomposition
我正在设计自动持久对象,为此我需要(a)找到指针成员,(b)找到他们的位置.编译器有这些信息,我期望反射会提供它,但我无法弄清楚如何做到这一点.例如,如果对象从地址505060开始
@interface MyClass : NSObject {
NSString *name; // class offset 4B, member address 505064
int code;
MyClass *next; // class offset 12B, member address 505072
}
@end
Run Code Online (Sandbox Code Playgroud)
相对于其拥有对象的地址的ivar的位置是实现细节.虽然它是一个定义明确的实现细节,但很少有真实的理由知道ivar的偏移量.
如果您真的需要知道ivar的位置,请查看Objective-C运行时函数class_getInstanceVariable()和ivar_getOffset().但是,如果您告诉我们您要做什么,我们可能会建议一种更智能的方法来解决您的问题.
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |