Hilfe

Type

B2D B+ B3D

Aufruf

Type typename

Parameter

typename Name der Type-Kollektion


Rückgabewert

-


Beschreibung

Dieser Befehl ist für Type Felder gedacht. Am Anfang der Type Definition steht Type und am Ende End Type. Dazwischen stehen mehrere Field Befehle.

Ein Type Feld ist ein dynamisches Feld, welches die Einträge automatisch verwaltet. Die Einträge in Type Feldern kann man nicht sofort ansprechen. Man muss zuerst zum richtigen Eintrag wechseln, und erst dann auslesen oder speichern.

Types sind eine Ansammlung von Eigenschaften. Bestes Beispiel dafür sind "Space Invaders". Alle Aliens benötigen bestimmte Eigenschaften, z.B. eine Position auf dem Bildschirm. Nun kann man ja jedem Alien einige Variablen zuweisen: alien1x, alien1y, alien2x, alien2y... Dies ist aber sehr aufwendig. Man könnte auch mehrere Dim Felder erzeugen und alle Daten dort abspeichern. Leider ändert sich ja die Anzahl der Aliens. Speziell für dieses Problem wurden Types entwickelt.



Types können an weitere Types drangehängt werden. Somit entsteht eine hierarchische Struktur. Siehe dazu das dritte Beispiel!


Zusatzinformation

Dim Felder sind einfacher zu benutzen und sollen bevorzugt angewendet werden.


Beispiel

Hier einige Beispiele wie man mit Types umgehen kann:

; Dies ist ein einfaches Beispiel :

Type crafts
   Field x
   Field y
   Field dead
   Field graphic
End Type

For t = 1 To 100
   alien.crafts = New crafts
   alien\x = Rnd (0 ,640)
   alien\y = Rnd (0 ,480)
   alien\dead = 0
   alien\graphic = 1
Next

alien.crafts = First crafts
Print alien\x
Print alien\y
Print alien\dead
Print alien\graphic

alien = After alien
Print alien\x
Print alien\y
Print alien\dead
Print alien\graphic

alien.crafts = Last crafts
Print alien\x
Print alien\y
Print alien\dead
Print alien\graphic

alien = Before alien
Print alien\x
Print alien\y
Print alien\dead
Print alien\graphic

; Dieser Programm demonstriert Type mit Dim Feld:

Type tile
   Field image
   Field extra
End Type

Dim map.tile (100,100)
map.tile (1,1) = New tile
map (1,1)\image = 1
map (1,1)\extra = 2

; Dieses Programm demonstriert angehängte Types :

Type fabrik
   Field preis
   Field flaeche
   Field stromkosten
   Field papier.papier
End Type

Type papier
   Field holzverbrauch
   Field papiermenge
End Type

Local fabrik.fabrik

fabrik = New fabrik
fabrik\preis = 1000000
fabrik\flaeche = 1000
fabrik\stromkosten = 9999
fabrik\papier = New papier
fabrik\papier\holzverbrauch = 1111
fabrik\papier\papiermenge = 123


Siehe auch

After, Before, Delete, Dim, Each, End Type, Field, First, Insert, Last, New

Übersicht Datenverwaltung Types & Felder