For-Loop делает странные вещи - PullRequest
0 голосов
/ 02 февраля 2019

Мой For-Loop делает странные вещи.Когда я отлаживаю свою программу, счетчик цикла после того, как 4-й цикл равен 0, после этого он начинается снова.

Если я не отлаживаю свою программу, я получаю исключение Stackoverflow-Exception.

for (int i = 0; i < gegnerischeFigurenn.Count; i++)
{
                gegnerischeAngriffsfelderr.AddRange(GetAvailableFields(gegnerischeFigurenn[i], schachbrett));
                Console.WriteLine("Count: " + i);
}

вывод консоли:

Count: 0
Count: 1
Count: 2
Count: 3
Count: 0
Count: 1
Count: 2
Count: 3
Count: 0
Count: 1 ......

результат - исключение стека-переполнения, если я не отлаживаю программу, а в противном случае неверное увеличение числа моего счета.

1 Ответ

0 голосов
/ 03 февраля 2019

Это может быть потому, что ваш метод вызывает себя изнутри (рекурсивный вызов).Если вы хотите поделиться большим количеством своего кода в цикле for, это может быть полезно, но проверьте, есть ли где-нибудь внутри вашего метода, который ссылается на себя.Эта ссылка объясняет, как возникают исключения стекопотока, поэтому может быть вам полезна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...