Menu
CoddyTech

Возврат значения

Часть раздела Основы путешествия по GDScript на Coddy. Урок 53 из 92.

Инструкция return возвращает значение из функции в код, который её вызвал. Вызов функции затем представляет это значение:

func get_max_hp():
	return 100
var hp: int = get_max_hp()
print(hp)

В hp хранится 100 — значение, возвращённое функцией, поэтому программа выводит 100.

Функция с параметрами может возвращать результат, вычисленный на их основе. Его можно сохранить, вывести или использовать в выражении:

func square(n):
	return n * n
print(square(4))
print(square(3) + 1)
16
10

return также завершает функцию. Строки после него в том же блоке не выполняются:

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(). В следующем уроке показано, как функция объявляет тип возвращаемого значения.

challenge icon

Задание

Легко
  1. Ниже _ready() объяви функцию square_number с одним параметром n. Она возвращает n * n.
  2. В _ready() вызови square_number() с input_num и сохрани возвращённое значение в переменную с именем result.
  3. Выведи 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
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор GDScript