Что делать с ошибкой cs0161? Почему я не могу поместить return в фигурные скобки?

Почему я не могу вставить в фигурные скобки return? Пишет не все пути возвращают значение. И не надо писать про зону видимости!
public static int[] GetFirstEvenNumbers(int count)
        {
          int [] array=new int[count];
            for (int i = 0; i < array.Length; i++)
            {
                int start = 2;
                array[i] = start + 2;
                return array;
            }
        }
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
@d-stream
Готовые решения - не подаю, но...
Поместить return вовнутрь фигурных скобок - можно. Но так же нужно поместить другие return'ы и во всех других местах, где может "закончиться" алгоритм.

Обобщенно-универсальный вариант - поставить return в самом конце перед последней закрывающей скобкой. Плюс расставить дополнительные там, где по логике получается "досрочный ответ" (в вопросе ).
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
vabka
@vabka Куратор тега C#
Токсичный шарпист
C# по делу ругается, что в некоторых случаях цикл может ни разу не выполниться.
Например если count =0

Тебе нужно просто добавить ещё один return после цикла, ну или кинуть exception
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы