我可以通过内存字符串获取对象吗



就像标题一样,我将内存地址保存为字符串

MyClass *class = [[MyClass alloc] init];
NSString *pointerStr = [NSString stringWithFormat:@"%p", class];

"指针str"是类的地址字符串;

现在我的问题是我可以得到类指针str ?非常感谢!

另一个问题如果类是dealloc

如何判断对象是否有效

考虑到iOS是32位系统,这是可行的,但这是危险的,不应该这样做:

 MyClass *class = (MyClass *)[pointerStr intValue];

对于64位Mac,使用:

 MyClass *class = (MyClass *)[pointerStr longLongValue];

但是一定有更好的方法来存储对象指针…

最新更新