double arrow

Вихід з функції

Існують два способи завершення виконання функції і повернення у точку програми, з якої здійснено виклик. Перший - завершення виконання функції з використанням оператора повернення return, як показано у попередньому прикладі. Цей спосіб найчасітше застосовують тоді, коли функція має тип результату відмінний від void. Причому, як видно з попереднього прикладу, в тілі функції може бути декілька операторів return. Цю саму функцію max можна було б реалізувати і таким чином:

int max(int a, int b)

{

int rez;

if(a>b) rez=a; else rez=b;

return rez;

}

У даному випадку, функція спочатку обчислює результат у змінній rez, а потім повертає результат через оператор return.

Інший спосіб завершення виконання функції полягає у послідовному проходженні всіх операторів тіла функції до закриваючої фігурної дужки. Цей спосіб можливий лише для функцій з типом результату void, хоча як показує наступний приклад він не є єдино можливим способом виходу з функцій типу void.

void divide(float x, float y)

{

float z;

if (x == 0) return; /* не можна ділити на нуль*/

z = y / x;

cout<<"z="<<z<<endl;

}

Отже, якщо функція має тип результату відмінний від void, то єдиний спосіб виходу з неї – це оператор return (якщо звісно ми не хочемо отримати повідомлення компілятора про синтаксичну помилку).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: