Menu
CoddyTech

Standardwerte

Teil des Abschnitts Grundlagen der GDScript-Journey von Coddy. Lektion 57 von 92.

Ein Parameter kann einen Standardwert haben, der in der Deklaration mit = geschrieben wird. Bei einem Aufruf kann dieses Argument dann weggelassen werden, und der Parameter erhält den Standardwert:

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

Der erste Aufruf übergibt ein Argument, daher ist greeting "Hello". Der zweite Aufruf übergibt seinen eigenen Wert, der den Standardwert ersetzt.

Eine Funktion kann mehrere Standardwerte haben, und auch typisierte Parameter können sie haben:

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

spawn("bat") gibt 1 x bat at speed 2.5 aus, und spawn("bat", 3) gibt 3 x bat at speed 2.5 aus. Argumente füllen die Parameter weiterhin der Reihe nach, daher kannst du speed nicht übergeben, ohne auch count zu übergeben.

Parameter mit einem Standardwert müssen nach denen ohne folgen. func greet(greeting = "Hello", player): ist ein Fehler: „Cannot have mandatory parameters after optional parameters“.

challenge icon

Aufgabe

Einfach

Das Programm liest einen Spielernamen in player ein.

  1. Definiere unter _ready() eine Funktion greet mit zwei Parametern: player_name und greeting mit dem Standardwert "Hello". Sie gibt die Begrüßung, ein Komma und ein Leerzeichen, den Namen und ! aus.
  2. Rufe in _ready() zuerst greet(player) und dann greet(player, "Welcome back") auf.

Für die Eingabe Ana lautet die Ausgabe:

Hello, Ana!
Welcome back, Ana!

Probier es selbst

extends Node

func _ready():
	var player := OS.read_string_from_stdin()
	# Rufe greet(player) auf, dann greet(player, "Welcome back")

# Deklariere unten greet() mit "Hello" als Standardbegrüßung
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-GDScript-Compiler