Skip to content

VorlageDokuFcnIsnothing

Steffen Schuemann edited this page Oct 12, 2019 · 1 revision

isnothing()

Test auf Wertfreien Inhalt

Syntax

<int>=isnothing(<expr>)

Beschreibung

Die Funktion ergibt für leere Variable (typlose Werte) einen Wert ungleich 0, sonst den Wert 0.

Parameter

expr
Ausdruck der geprüft werden soll, ob er nichts enthält. (Achtung: Nichts ist in diesem Fall weder 0 noch ein Leerstring!)

Beispiel

Nehmen wir an, das wri in einem Dictionary $NeedsMoney für jede Einheit (übergeben in $ENr) ablegen wollen, wieviel Geld sie braucht. Weiterhin soll das in mehreren Stufen geschehen können, also z.B. aus der Variablen $Money aufaddiert werden.

Das innere #if sieht dann z.B. so aus:

; Gibt es schon einen Eintrag im Dictionary?
#if isnothing($NeedsMoney[$ENr])
{
    ; Nein, also ersten Bedarf setzen
    $NeedsMoney[$ENr]=$Money
}
#else
{
    ; Ja, also Bedarf zu bestehendem addieren
    $NeedsMoney[$ENr]=$NeedsMoney[$ENr]+$Money
}

Würde man einfach nur den Teil im #else-Fall verwenden, bekäme man eine Fehlermeldung die besagt, das man nicht mit Typlosen Operanden rechnen könne, weil der Zugriff auf $NeedsMoney[$ENr] beim ersten mal ja einen typlosen Wert zurückgibt.

Referenzen

Clone this wiki locally