Tutorial / Funktion mit Parametern

Funktion mit Parametern

Um Werte an eine Funktion zu übergeben, müssen dafür die Details bei der Definition festgelegt werden.

Definition

Zum Beispiel sollen 2 Objekte an eine Funktion übergeben werden:

::test( a, b )
	Print "A: " + a
	Print "B: " + b

Parameter werden in Klammern definiert und mit Komma getrennt. Hier werden die Variablen festgelegt, unter denen die Werte nachher abrufbar sind.

Wichtig
Der Variable-Name eines Funktions-Parameters darf nicht bereits im umgebenden Typ verwendet werden!

Der Aufruf erfolgt wieder mit "this", wobei nun die zu übergebenden Werte innerhalb von Klammern angehängt werden:

::test( a, b )
	Print "A: " + a
	Print "B: " + b
this.test( 3, 7 )
this.test( 22, 44 )
this.test( 'x', 'y' )

Typ-Prüfung

Wird kein Typ angegeben, kann jedes beliebige Objekt übergeben werden. Dies entspricht dem Vorgabe-Typ "Object":

::test( Object a, Object b )

Es ist sinnvoll den gewünschten Typ vorzugeben, um unerwünschte Ergebnisse zu vermeiden.:

::test( Str a, Int b )

So darf an die Funktion nur noch ein String und ein Integer-Wert übergeben werden. Alles andere würde zu einem Fehler führen.

::test( Str a, Int b )
	Print "A: " + a
	Print "B: " + b
this.test( "Foo", 3 )
this.test( "Bar", 7 )
this.test( "Bak", 9 )

Nil

Soll auch "nil" übergeben werden dürfen, so muss an die Variablen ein Fragezeichen angehängt werden:

::test( Str a, Int b? )
	Print "A: " + a
	Print "B: " + b?.replaceNil( 0 )
this.test( "Foo", 3 )
this.test( "Bar", nil )
this.test( "Bak", 9 )

Mit ".replaceNil" wird ggf. ein Standardwert verwendet. In diesem Beispiel wird somit nicht "nil" sondern "0" ausgegeben.

- Powered by OghsWiki -

 

 

Unterstützen

Die Entwicklung von "JayMo" wird derzeit nur durch Eigeninitiative ermöglicht.

Erhalten:  0 €