2011-01-17 8 views
0

私はその後、私は(はい、クラスが宣言デリゲートプロトコルを持っている)クラスにこのコールを持っているデリゲートiphone - スカラー型の表現が必要ですか?

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

    return NO; 
} 

に、このメソッドを持っています。

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

と言った場合、私はこの上のエラーを持っている:エラー:文がスカラー型(「無効」は無効)の発現を必要とするを??????????

私は

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

を行うことを試みたが、それは私に別のエラーを与える:無効なオペランドをバイナリ表現に( '無効' と 'int型')

は、それはなぜですか?

おかげ

答えて

2

あなたのプロトコルは、このように、その方法を表現している場合:

- (void)isBook:(int)number; 

その後、それはあなたがエラーを取得する方法を最も可能性が高いです。あなたの実装のようにBOOLを返すように変更してください。

+0

Duuuhhhhhhhhhhh !!!!!!!明らかに。ありがとう。それでおしまい。私は読んでいるが、私は見ていない... :( – SpaceDog

関連する問題