14.07.2014 Aufrufe

Handbuch BasicMaker 2010 - SoftMaker

Handbuch BasicMaker 2010 - SoftMaker

Handbuch BasicMaker 2010 - SoftMaker

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Besonderheiten beim Variant-Datentyp<br />

Bei <strong>SoftMaker</strong> Basic muss eine Variable nicht unbedingt deklariert zu werden, bevor sie zum ersten Mal verwendet<br />

wird (Ausnahme: wenn Option Explicit gesetzt wurde). <strong>SoftMaker</strong> Basic deklariert sie dann bei ihrem ersten Auftreten<br />

automatisch – und zwar als Datentyp Variant.<br />

Der Datentyp Variant kann benutzt werden, um wahlweise Zahlen, Zeichenketten oder Datum/Uhrzeit-Werte zu speichern.<br />

Typumwandlungen geschehen dabei automatisch.<br />

Sie können Variablen auch explizit als Variant deklarieren, zum Beispiel mit Dim x As Variant oder einfach nur<br />

Dim x ohne Typangabe.<br />

Ein Beispiel für die Verwendung von Variant-Variablen:<br />

Sub Main<br />

Dim x<br />

x = 10<br />

x = x + 8<br />

x = "F" & x<br />

print x<br />

End Sub<br />

'Variant-Variable<br />

'Ergebnis: "F18"<br />

Wenn Zahlen in einer Variant-Variablen gespeichert werden, wird automatisch der kompakteste Datentyp gewählt, mit<br />

dem die Zahl dargestellt werden kann (in der Reihenfolge Integer, Long, Single, Double).<br />

Der von einer Variant-Variablen beherbergte Datentyp kann jederzeit wechseln. Um den aktuellen Datentyp zu ermitteln,<br />

können Sie die Funktion VarType verwenden. Mit der Funktion IsNumeric können Sie prüfen, ob die Variable<br />

momentan einen numerischen Wert enthält.<br />

Variant-Variablen können zwei spezielle Werte annehmen, die es bei anderen Datentypen nicht gibt:<br />

Empty ist der Wert einer Variant-Variablen, die noch nicht initialisiert wurde. Er kann mit der Funktion IsEmpty<br />

abgefragt werden. Bei numerischen Operationen wird Empty als 0, bei Zeichenkettenoperationen als eine leere Zeichenkette<br />

interpretiert.<br />

Der Wert Null dient zur Darstellung der Tatsache, dass kein (gültiger) Wert verfügbar ist. Er kann mit der Funktion<br />

IsNull abgefragt werden. Jede Operation mit einem Null-Wert ergibt Null.<br />

Verkettung von Variant-Variablen<br />

Wenn eine Zeichenkette und eine Zahl mit dem Operator + verkettet werden, resultiert daraus eine Zeichenkette.<br />

Verketten Sie zwei Zahlen, ist das Ergebnis hingegen eine Zahl. Möchten Sie stattdessen eine Zeichenkette erhalten, ist<br />

statt + der Operator & zu verwenden, der – unabhängig vom Datentyp der Argumente – stets eine Zeichenkette liefert.<br />

Benutzerdefinierte Datentypen<br />

Mit Hilfe der Anweisung Type können Sie eigene Datentypen definieren. Dies muss vor der Deklaration von Prozeduren<br />

geschehen – benutzerdefinierte Datentypen sind nämlich stets global gültig. Die Variablen eines benutzerdefinierten<br />

Typs können hingegen lokal oder global deklariert werden.<br />

Hinweis: Die Verwendung von Arrays in benutzerdefinierten Typen ist nicht zulässig. Weiterhin können Variablen benutzerdefinierten<br />

Typs nicht an DLLs übergeben werden, die C-Strukturen erwarten.<br />

Type Person<br />

Name As String<br />

Vorname As String<br />

Geschlecht As String*1<br />

Geburtsdatum As String<br />

End Type<br />

' ("m" oder "w")<br />

Variablen dieses Typs können wie andere Variablen mit Dim oder Static angelegt werden. Auf die einzelnen Elemente<br />

kann mit der Punktnotation Variable.Element zugegriffen werden (siehe auch With-Anweisung).<br />

Dim p As Person<br />

p.Name = "Maier"<br />

<strong>Handbuch</strong> <strong>BasicMaker</strong> <strong>2010</strong> Sprachelemente von <strong>SoftMaker</strong> Basic 35

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!