Graphics Reference
In-Depth Information
Loop
FileClose(12)
' Close Datei
End Sub
Solchen unsinnigen Programmcode vermeidet man, indem in einem ersten Durch-
lauf nur die aktuelle Anzahl von Datensätzen auf einem Datenträger festgestellt
wird, dann mit
ReDim
ein in der Größe passendes Array maßgeschneidert wird und
in einem zweiten Durchlauf die Daten vom Datenträger in das Array umgesetzt
werden.
Mit geschachtelten Schleifen können mehrdimensionale Arrays effektiv bearbei-
tet werden. Die folgenden Anweisungen initialisieren beispielsweise jedes Element
der
MatrixA
mit Werten zwischen 0 und 99.
Dim I, J As Integer
Dim MaxDimZ, MaxDimS As Integer
' größte Indice MatrixA
Dim MatrixA(9, 9) As Short
MaxDimZ = MatrixA.GetUpperBound(0) ' max. Zeilen
MaxDimS = MatrixA.GetUpperBound(1) ' max. Spalten
ForI=0ToMaxDimZ
ForJ=0ToMaxDimS
MatrixA(I, J) = (I
*
10) + J
Next J
Next I
Zur Handhabung von Array stehen viele Hilfsfunktionen zur Verfügung, von de-
nen hier nur einige vorgestellt werden. Die
Rank
-Eigenschaft gibt den Rang - also
die Dimension - zurück und die
Sort
-Methode sortiert Elemente nach bestimmten
Kriterien. Die Länge - die Ordnung - der einzelnen Dimensionen wird durch die
GetLength
-Methode zurückgegeben. Der niedrigste Indexwert für eine Dimen-
sion beträgt immer 0, während der höchste durch die
GetUpperBound
-Methode
zurückgegeben wird. Die Gesamtgröße eines Arrays kann man seiner
Length
-
Eigenschaft entnehmen. Dies ist die Gesamtzahl der Elemente, die derzeit im Array
enthalten sind, nicht die Anzahl der im Speicher beanspruchten Byte. Im vorherigen
Beispiel würde
MatrixA.Length
den Wert 100 zurückgeben.
6.1.2 Strukturen
Es können Datenelemente verschiedener Typen kombiniert werden, um eine
Struk-
tur
zu erstellen. Hierzu werden ein oder mehrere
Member
einander und der Struktur
selbst zugeordnet, wobei ein
Member
auch eine andere Struktur sein kann. Dadurch
entsteht ein zusammengesetzter Datentyp, mit dem eigene Variablen mit diesem
Datentyp deklariert werden können. Zusätzlich zu Feldern können Strukturen auch
Eigenschaften, Methoden und Ereignisse offenlegen.
Tabelle
6.1
zeigt die für unsere Arbeit nützlichen Datentypen; einige weitere sind
weggelassen.