Курс Raku / Основи / Основи функцій / Створення та виклик функцій
Повернення результату
Функції часто не тільки виконують певні дії, але й повертають результат. Наприклад, у функціональному програмуванні функції не повинні створювати побічні ефекти, такі як виведення на консоль. Проте, Raku не обмежує вас у цьому. Давайте подивимося, як повернути значення з функції та як отримати його в коді, що викликає функцію.
sub add($x, $y) {
return $x + $y;
}
my $sum = add(10, 20);
say $sum; # 30Тут функція під назвою add приймає два числа і повертає
їх суму. Використовується явне return. На стороні виклику
значення, яке повертає функція, може використовуватися як будь-яке інше
значення. У наведеній вище програмі воно присвоюється змінній.
Останнє обчислене значення
У Raku явне return не є обов’язковим, якщо результат,
який ви хочете повернути з функції, є останнім обчисленим значенням у її
тілі. Наша функція add може бути спрощена:
sub add($x, $y) {
$x + $y
}Як ви могли помітити, в кінці рядка немає крапки з комою, оскільки вона не потрібна, коли рядок завершує поточний блок коду.
Такі тривіальні та невеликі функції часто форматуються в один рядок для більш компактного коду:
sub add($x, $y) { $x + $y }Відсутність даних для повернення
Якщо вам потрібно повернутися з функції до завершення її тіла, і
функція не повертає жодного результату, використовуйте порожнє
return.
sub test($x) {
return if $x <= 10;
say "$x перевищує ліміт";
}Практика
Виконайте 1 тест за змістом цієї теми.
Навігація курсом
← Передача аргументів | Тест — Повернення з функції →
💪 Або перейдіть одразу до вправ цього
розділу.