Die Wahl der speziellen Operatoren in diesem Kapitel erfolgte nach rein subjektiven Kriterien. Das liegt darin begründet, dass zum Beispiel die Operationen Inkrement und Dekrement in Gambas zu den arithmetischen Funktionen gezählt werden, die den Wert einer Variablen auf den Nächstliegenden ändern. Diese Sichtweise hatten Sie schon im Kapitel 8.2 bei den arithmetischen Operatoren MOD und DIV kennengelernt. Man könnte also die Funktionen INC und DEC als unäre Operatoren auffassen:
Operator | Beschreibung |
---|---|
INC numVariable | Der Wert der numerischen Variablen wird um 1 erhöht. Analog wäre die Berechnung numVariable = numVariable +1 oder numVariable += 1 |
DEC numVariable | Der Wert der numerischen Variablen wird um 1 verringert. Analog wäre die Berechnung numVariable = numVariable -1 oder numVariable –= 1 |
Expression IS Class | Liefert TRUE, wenn ein Objekt eine Instanz einer Klasse oder einer seiner Nachkommen ist. Expression ist ein beliebiger Ausdruck, der eine Objektreferenz zurück gibt und Class ist ein Klassen-Name. |
Expression NOT IS Class | Liefert TRUE, wenn ein Objekt keine Instanz einer Klasse oder einer seiner Nachkommen ist. |
Tabelle 8.6.1: Spezielle Operatoren
Beispiele:
PRINT ["Gambas", "rules!"] IS String[] True DIM myTextBox AS NEW TextBox(ME) PRINT myTextBox IS Control True PRINT ["Gambas", "rules!"] IS Collection False PRINT ["Gambas", "rules!"] NOT IS Collection True
Der !-Operator ist ein spezieller Operator für bestimmte Container-Objekte, die Zugriff auf ihre Elemente anhand eines Strings erlauben. Beispiele für solche Klassen sind Collection und Result, aber auch graphische Steuerelemente wie ListView.
Dabei wird der Schlüsselstring nach dem !-Operator notiert, sodass hCollection!FirstName
gleichbedeutend ist mit hCollection[„FirstName“]
. Der Rückgabewert ist der Wert des Elements mit dem Schlüssel „FirstName“.
sCurrent.FirstName = hResult!FirstName sCurrent.FirstName = hResult["FirstName"] ' Alternative
Artikel