Array (Handling und Operationen)

WRITEME

Arrays werden in statische und dynamische unterteilt.
Statische Arrays haben eine feste Länge, die bei der Deklaration angegeben werden muss, und können deshalb im Speicher effizienter und schneller verwaltet werden.
Dynamische Arrays können während der Laufzeit ihre Dimensionierung verändern, so dass neue Elemente hinzugefügt oder gelöscht werden können. Dazu ist etwas Verwaltungsaufwand notwendig, ermöglicht aber das dynamische Handhaben von Listen und Feldern.

Bei statischen Datentypen, also Variabeln mit fester Länge wie Long oder Double oder Strings mit festen Längen, werden die Informationen direkt in die Feldpositionen gespeichert. Bei dynamischen Längen wie Strings werden Zeiger in die Array-Felder geschrieben.

Um Arrays möglichst schnell verwalten zu können, werden die beiden Häufigsten getrennt von einander verwaltet.

ArrayDim11D-Listen
ArrayDim22D-Felder
ArrayDimXXD-Felder mit beliebigen Dimensionen
Type ArrayDim1
    UBound    '- Größtes Feld
    LBound    '- Kleinstes Feld
    VarTyp    '- VariabelTyp des Arrays (zB. 4 für 4-Byte Array)
    Data      '- Zeiger auf die Daten im Array
End Type
 
Type ArrayDim2
    UBound    '- Größtes Feld  für Y
    LBound    '- Kleinstes Feld für Y
    UBound    '- Größtes Feld  für X
    LBound    '- Kleinstes Feld für X
    VarTyp    '- VariabelTyp des Arrays (zB. 4 für 4-Byte Array)
    Data      '- Zeiger auf die Daten im Array
End Type
 
Type ArrayDimX
    .
    .
    .
    UBound    '- Grösstes Feld  für Dimension1
    LBound    '- Kleinstes Feld für Dimension1
    DimAnzahl '- Anzahl Dimensionen für das Array
    VarTyp    '- VariabelTyp des Arrays (zB. 4 für 4-Byte Array)
    Data      '- Zeiger auf die Daten im Array
End Type

Array Dimensionierung

WRITEME

Array Management

WRITEME

Array Bound

WRITEME


Runtime/Array.txt · Zuletzt geändert: 2009/05/08 19:51 (Externe Bearbeitung)