合成的ivars存储在哪里?

wrl*_*lee 6 properties objective-c ios xcode4

我一直在阅读自动合成的伊娃.我的问题是,"它们是自动分配的吗?" 我本来希望它们是self的一部分,所以我可以在调试器中看到它们,但似乎我能看到它们的唯一方法是调用accessor方法(通过gdb'po'命令).类/对象的结构中是否没有空格(就像明确声明的ivar一样)?

(是否有现代Objective-C对象的内存中表示的描述?)

作为一个C家伙,不能看到一切都在哪里让我感到非常不舒服.:-P

Tom*_*sen 1

看起来这会告诉你: 自动@synthesized ivars如何影响*real*sizeof(MyClass)?

我内心也是个C型的人。为什么要费心使用这些自动生成的呢?我喜欢观察一个类,看看它在数据方面持有什么。

有趣的是:他们如何通过 64 位的改变来让事情变得更好。 http://www.sealiesoftware.com/blog/archive/2009/01/27/objc_explain_Non-fragile_ivars.html