将伪私有实例变量放在.m文件的类扩展中或将它们放入新引入的@implementation括号(如下所示)中,它们之间有什么区别?在类扩展或@implementation块中添加伪私有ivars有什么区别?
是否有后果,优点,缺点或缺点? internal2的处理与程序员必须关心的内部3的处理方式不同吗? (当然,麦凯会说有一个区别,但问题是如果你在实践中是否在意)。
// MyClass.m
@interface MyClass() {
id internal2;
}
@end
@implementation MyClass {
id internal3;
}
- (void)internalMethod {
NSLog(@"%@ %@", internal2, internal3);
}
@end
来源:http://www.mcubedsw.com/blog/index.php/site/comments/new_objective-c_features/
类可以有多个实现块。它是类扩展的基础。 – 2012-02-03 01:46:26
当然可以。但是不涉及类别,一个类只能有一个@implementation。 – UIAdam 2012-02-03 01:52:20
@EllNeal:分类'@ implementation's!= Class'@ implementation's – 2012-02-03 01:56:33