-1

コードは次のとおりです。

    while((fingerYLast - fingerAt.y) > fingerMoveThresh)
    {
        if( (activeCard) < (allCardList.count - 2))
        {
            [self sayOut:@"TRUE"];
            activeCard = activeCard + 1;
        }
        else
        {
            //WTF????
            [self sayOut:[NSString stringWithFormat:@"FALSE %i %i",
                          activeCard, (allCardList.count - 2)]];
        }
        fingerYLast -= fingerMoveThresh;            
    }

テスト値を確認したところ、activeCard は -1 で、allCardList のメンバーは 10 です。

activeCard = -1;
(activeCard) < (allCardList.count - 2) //evaluates as false

(activeCard+1) < (allCardList.count - 1) //evaluates as true

何か案は?

4

1 に答える 1

3

私はその言語でコーディングしていませんが、allCardList.count は符号なしの数量を返し、-2 をゼロ以下に押し込もうとすると、非常に大きな符号なしの数値が返されると思います。

于 2013-05-20T10:57:30.007 に答える