cocoa-[Person copyWithZone:]:发送到实例的选择器无法识别



我正在做一些可可编程,遵循Mac OS X的cocoa编程,我被困在第8章(NSArrayController)中,我正在遵循那本书中定义的指南,但我不知道为什么应用程序总是引发unrecognized selector sent to instance错误。

我的代码在这里RaiseMan,如果你有任何建议,非常感谢。

我自己解决了。NSArrayController add方法的行为是复制一个对象,而不是保存该对象的pointer。我遇到的是我没有在类Person中实现NSCoping协议,我这样修复它:

Person.h解密器NSCoping:中

@interface Person : NSObject <NSCopying> {
    NSString *personName;
    float expectedRaise;
}

并且在Person.m中实现它:

-(id)copyWithZone:(NSZone *)zone
{
    return self;
}

相关内容

最新更新