我有一个类,MyClass
,它实现了NSCopying
协议,我有一个类,MyClassChild
,它继承自MyClass
。 MyClassChild
不执行NSCopying
协议。我正在阅读的教科书说它必须,但是我可以成功构建!教科书是错的吗?必须使用子类实现父母符合的协议吗?
@interface MyClass : NSObject <NSCopying> {
}
@end
@implementation MyClass
-(id)copyWithZone:(NSZone *)zone
{
return self;
}
@end
@interface MyClassChild : MyClass {
}
@end
@implementation MyClassChild
@end
+1错过了。这不是“不好”,它显然是错误的(除了在GC环境中)。您至少需要返回'[self retain];',然后仅用于不可变对象。 – JeremyP 2011-05-09 16:24:23
是的,只是为了快速编译它 – TheLearner 2011-05-10 08:30:48