Menu
CoddyTech

Valores predeterminados

Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 57 de 92.

Un parámetro puede tener un valor predeterminado, escrito con = en la declaración. Después, una llamada puede omitir ese argumento y el parámetro recibe el valor predeterminado:

func greet(player, greeting = "Hello"):
	print(greeting, ", ", player, "!")
greet("Ana")
greet("Ana", "Welcome back")
Hello, Ana!
Welcome back, Ana!

La primera llamada pasa un argumento, así que greeting es "Hello". La segunda llamada pasa su propio valor, que reemplaza el valor predeterminado.

Una función puede tener varios valores predeterminados, y los parámetros tipados también pueden tenerlos:

func spawn(enemy: String, count: int = 1, speed: float = 2.5) -> void:
	print(count, " x ", enemy, " at speed ", speed)

spawn("bat") imprime 1 x bat at speed 2.5, y spawn("bat", 3) imprime 3 x bat at speed 2.5. Los argumentos siguen completando los parámetros en orden, así que no puedes pasar speed sin pasar también count.

Los parámetros con un valor predeterminado deben ir después de los que no lo tienen. func greet(greeting = "Hello", player): es un error: «No puede haber parámetros obligatorios después de parámetros opcionales».

challenge icon

Desafío

Fácil

El programa lee un nombre de jugador en player.

  1. Debajo de _ready(), declara una función greet con dos parámetros: player_name y greeting con el valor predeterminado "Hello". Imprime el saludo, una coma y un espacio, el nombre y !.
  2. En _ready(), llama a greet(player) y después a greet(player, "Welcome back").

Para la entrada Ana, la salida es:

Hello, Ana!
Welcome back, Ana!

Pruébalo tú mismo

extends Node

func _ready():
	var player := OS.read_string_from_stdin()
	# Llama a greet(player) y luego a greet(player, "Welcome back")

# Declara greet() a continuación, con "Hello" como saludo predeterminado
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de GDScript online