1

我在这里阅读目标 c 中的类别和扩展

https://developer.apple.com/library/ios/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/CustomizingExistingClasses/CustomizingExistingClasses.html

它说我可以在这样的扩展中声明对象...

情况1

@interface XYZPerson () {
    id _someCustomInstanceVariable;
}
@end
@implementation XYZPerson {
...
}
...
@end

我已经看到了在实现(.m)文件中声明对象的代码片段,就像这样......

案例二

@interface XYZPerson () {
    ...
}
@end
@implementation XYZPerson {
      id _someCustomInstanceVariable;
}
...
@end

我的问题是:扩展中声明的“_someCustomInstanceVariable”与实现中声明的有什么区别。扩展可用于使对象私有,但“id _someCustomInstanceVariable”在第二种情况下也是私有的。

4

0 回答 0