1

現在、C# で 2D コネクト フォー ゲームを作成しようとしています。4色すべてが一致する必要がある場合を知っています。とにかく、私は現在、衝突を機能させようとしていますが、「インデックスは配列の境界外でした」というエラーが表示され続けています。これがなぜなのか知っていますか? ありがとう

private void rules()
{
    int count = 0;

    if (btn[maxR, maxC].BackColor == Color.Red)
    {
        count = 1;
    }
    for (int i = 0; i <= btn.Length; i++)
    {

        if (btn[maxR, i].BackColor == Color.Red)
        {
            count++;
        }

    }
    if (count >= 4)
    {
        lbl2.Text = "winner";
    }
}
4

1 に答える 1

1

使いました:

i <= btn.Length

これにより、範囲外の例外が発生します。これは、インデックスがゼロから始まり、で終わるためbtn.Length-1です。

だから使用:

for (int i = 0; i < btn.Length; i++)

PS: 論理エラーがあるかどうかはわかりません。

于 2013-02-06T23:11:12.447 に答える