iphone - 需要表达标量类型?

时间:2011-01-17 12:41:46

标签: iphone ios objective-c

我在委托上有这个方法

- (BOOL) isBook:(int)number {
    if (  ((number >= 0) && (number < 73)) ||
            ((number >= 432) && (number < 2864)) ) { 
        return YES; 
    }

    return NO;
}

然后我在类上调用了(是的,类声明了委托协议)。

if ([delegate isBook:number]) {
  //do stuff
}

我在这个IF上有一个错误说:错误:声明需要表达标量类型('void'无效) ??????????

我试过

if ([delegate isBook:numnber] == YES)

但它给了我另一个错误:二进制表达式的无效操作数('void'和'int')

为什么?

感谢

1 个答案:

答案 0 :(得分:2)

如果您的协议正在表达该方法:

- (void)isBook:(int)number;

然后,你最有可能得到错误;更改它,以便像您的实现一样返回BOOL