Главная arrow Язык программирования C# arrow C# Полное руководство Герберт Шилдт arrow Возврат из метода C# Полное руководство Герберт Шилдт

Возврат из метода C# Полное руководство Герберт Шилдт

В целом возврат из метода может произойти при двух условиях. Во-первых, когда встречается фигурная скобка, закрывающая тело метода, как показывает пример метода AreaPerPerson () из приведенной выше программы. И во-вторых, когда выполняется оператор return. Имеются две формы оператора return: одна — для методов типа void, т.е. тех методов, которые не возвращают значения, а другая — для методов, возвращающих конкретные значения. Первая форма рассматривается в этом разделе, а в следующем разделе будет пояснено, каким образом значения возвращаются из методов.
Немедленное завершение метода типа void можно вызвать, используя следующую форму оператора return:
   return;
Когда выполняется этот оператор, управление возвращается вызывающей части программы, а оставшийся в методе код пропускается. В качестве примера рассмотрим следу ющип метод:

public void MyMeth() {
   int i;
 
   for(i=0; i<10; i++) {
      if(i == 5) return; // прервать на шаге 5
      Console.WriteLine ();
   }
}


В данном примере выполняется лишь 5 полноценных шагов цикла for, поскольку при значении 5 переменной i происходит возврат из метода.
В методе допускается наличие нескольких операторов return, особенно если имеются два или более вариантов выхода из него. Например:

public void MyMeth() {
   // ...
   if(done) return;
   // ...
   if(error) return;
}


В данном примере возврат из метода происходит в двух случаях: если метод завершает свою работу или происходит ошибка. Но пользоваться таким приемом программирования следует очень аккуратно. Ведь из-за слишком большого числа точек выхода из метода может нарушиться структура кода.
Итак, напомним еще раз: возврат из метода типа void может произойти при двух условиях: по достижении закрывающей фигурной скобки или при выполнении оператора return.