1

我不断收到错误实例方法未找到执行选择器...任何人都可以帮助我清除此错误吗?

#import <Foundation/Foundation.h>
#import "add.h"

int main(int argc, const char * argv[])
{
    SEL mySelector;

    id b = [[add alloc] init];

    mySelector = @selector(add2Num:);

    [b performSelector: mySelector]; // here is where i am getting the error

    [b release];

    return 0;
}

然后 int add.m 文件

#import "add.h"

@implementation add

-(void)add2Num
{
    num1 = 1;
    num2 = 2;
    iResult = num1+ num2;
}

@end

提前感谢您的帮助。

4

2 回答 2

3

问题很可能是您键入@selector(add2Num:)而不是@selector(add2Num).

请注意,在我更正的语法中,选择器名称末尾缺少“:”。包括“:”表示选择器接受一个参数,但您的方法addNum没有。

于 2012-05-06T03:20:43.153 回答
0

这看起来是一个简单的错字。我相信你的意思是performSelector:,而不是 preformSelector:。颠倒“r”和“e”。

于 2012-05-06T03:32:22.357 回答