我正在尝试使用responsToSelector,但无法获得预期的输出,任何人都可以在我的代码中找到问题所在吗?

|
#import \"movie.h\"
int main (int argc, const char * argv[])
{

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    // insert code here...
    movie *obj = [[movie alloc]init];
   [obj findinterestofnum1:(int)200 num2:(int)4 num3:(int)5];

    SEL suf = @selector(findinterestofnum1: num2:num3:);
    BOOL sul = [obj respondsToSelector:suf];

    if(sul)
    {
        NSLog(@\"It is implememted\");
    }

    else
    {
        NSLog(@\" It is not implemented\");
    }

    NSLog(@\"Hello, World!\");

    [pool drain];
    return 0;
}
********-----
@interface movie : NSObject {
@private

}
-(void)findinterestofnum1:(int)p num2:(int)n num3:(int)r;

@end
*******-------
#import \"movie.h\"


@implementation movie

-(void)findinterestofnum1:(int)p num2:(int)n num3:(int)r
{
  int a ;
    a= (p*n*r/100);


    NSLog(@\"interest value is =%d\",a);

}




- (void)dealloc
{
    [super dealloc];
}

@end
我试图找到方法是否已实现,如果不是,则应打印未实现     
已邀请:
@ toddler,responsToSelector只是检查相应的对象是否可以响应该特定方法。由于它是运行时检查,因此它不会对接口是否与该定义相关联进行任何检查。 如果您从实现文件(.m文件)中而不是接口中删除了代码,则在执行该代码时会出现错误,并且会发现BOOL sul为FALSE。     

要回复问题请先登录注册