Definiert eine eigene Funktion, die Argumente aufnehmen kann und optional ein Ergebnis zurückgibt.
Func functioname ( [ByRef] $param1, ..., [ByRef] $paramN, $optionalpar1 = value, ...)
...
[Return [value]]
EndFunc
Parameter
Die Parameter werden von dir selbst gewählt. Später rufst du sie genau wie die eingebauten Funktionen auf.
Bemerkungen
Das Schlüsselwort ByRef ist optional und bedeutet, dass der Parameter 1. eine Variable sein muss und die Variable 2. von der Funktion geändert werden kann. Standardmäßig wird ein Parameter durch seinen Wert übergeben, d.h. dass eine Kopie des Parameterwertes von der Funktion manipuliert wird.
Siehe auch
Dim/Global/Local, #include
Beispiel
; Beipselskript mit drei nutzerdefinierten Funktionen
; Beachte die Verwendung von Variablen, ByRef und Return
$foo = 2
$bar = 5
msgBox(0,"Heute ist " & today(), "$foo ergibt " & $foo)
swap($foo, $bar)
msgBox(0,"nachdem $foo und $bar vertauscht wurden", "$foo now contains " & $foo)
msgBox(0,"Zu guter Letzt:", "Die größere Zahl von 3 und 4 ist " & max(3,4))
Exit
Func swap(ByRef $a, ByRef $b) ;vertauscht den Inhalt zweier Variablen
Local $t
$t = $a
$a = $b
$b = $t
EndFunc
Func today() ;Gibt das aktuelle Datum in der Form dd/mm/yyyy zurück
return (@MDAY & "/" & @MON & "/" & @YEAR)
EndFunc
Func max($x, $y) ;Gibt die größere von zwei Zahlen zurück
If $x > $y Then
return $x
Else
return $y
EndIf
EndFunc
;Ende des Beispiel-Skriptes