Возврат значения
Часть раздела Основы путешествия по GDScript на Coddy. Урок 53 из 92.
Инструкция return возвращает значение из функции в код, который её вызвал. Вызов функции затем представляет это значение:
func get_max_hp():
return 100var hp: int = get_max_hp()
print(hp)В hp хранится 100 — значение, возвращённое функцией, поэтому программа выводит 100.
Функция с параметрами может возвращать результат, вычисленный на их основе. Его можно сохранить, вывести или использовать в выражении:
func square(n):
return n * nprint(square(4))
print(square(3) + 1)16
10return также завершает функцию. Строки после него в том же блоке не выполняются:
func check_age(age):
if age >= 18:
return "adult"
return "minor"check_age(20) возвращает "adult" и останавливается. check_age(12) пропускает блок if и возвращает "minor".
Функция без return возвращает null.
Эти функции не указывают, какой тип они возвращают, поэтому GDScript не может определить тип по ним: var hp := get_max_hp() — это ошибка. Укажи тип переменной самостоятельно, как в var hp: int = get_max_hp(). В следующем уроке показано, как функция объявляет тип возвращаемого значения.
Задание
Легко- Ниже
_ready()объяви функциюsquare_numberс одним параметромn. Она возвращаетn * n. - В
_ready()вызовиsquare_number()сinput_numи сохрани возвращённое значение в переменную с именемresult. - Выведи
result.
Для ввода 5 вывод будет таким:
25Попробуйте сами
extends Node
func _ready():
var input_num := int(OS.read_string_from_stdin())
# Сохраните square_number(input_num) в result, затем выведите result
# Объявите ниже square_number(n): она возвращает n * n
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Онлайн-компилятор GDScript