引发 iOS 异常:无法识别的选择器发送到实例



>我有一个问题。我正在另一个类中调用一个方法。我之前调用它并且它工作得很好,但我在类结束时用另一种方法回调,我有这个错误:

-(void)methodOne:(NSString*)myString
{
    mySecondClasss *second = [[mySecondClasss init] autorelease];
    [second doSomething:myString];
    /*
     more code
     */
}
-(void)methodTwo:(NSString*)myString
{
    mySecondClasss *second = [[mySecondClasss init] autorelease];
    [second doSomething:myString];
    /*
     more code
     */
}

在第二个我收到此错误:

抛出异常:-[mySecondClasss doSomething:]:发送到实例的无法识别的选择器。我不明白为什么一次有效,第二次无效。你们中的任何人都可以给我一些如何解决这个问题的指示?

我真的很感激你的帮助。

从IOS 5开始,您就有ARC(自动引用计数),它可以自动正确释放对象。无论如何,您不会为 mySecondClasss 类分配内存。不知道为什么它甚至在第一种方法中有效。

而不是使用

mySecondClasss *second = [[mySecondClasss init] autorelease];

尝试使用

mySecondClasss *second = [[mySecondClasss alloc] init];

您确定要向函数发送字符串吗?该错误意味着函数未获取字符串。

例如:

[self methodOne:@"Properly formatted string"];

相关内容

最新更新