Skip to end of metadata
Go to start of metadata

<RetVar> = Der Name, den man dem Array (hier Feld oder Bereich) zuweisen möchte, und der die Variable benennt, in dem die Informationen gespeichert werden. 
<Var/Number> = Die Größe des Arrays. Diese Nummer legt fest, wie viele Elemente das Array beinhalten kann. 

Erstellt und reserviert ein Array mit <Var/Number> Elementen und weißt das Ergebenis <RetVar> zu. 
Die Größe des Arrays kann 0 betragen, was dann eine Matrix ohne Inhalt bereitstellt, welches im Nachhinein erweitert werden. 

Arrays basieren immer auf 0. Das erste Element in einem Array ist immer 0. 

In einem Array können auch mehrere Arrays exisiteren (Ein Array in einem Array). Diese internen Arrays können zu dem Zeitpunkt erstellt werden, wenn das Masterarray (Überbereich) erstellt wird, oder aber können eine Vielzahl von Quellen darstellen, wo man als Rückgabe ein Array erhält. 

Beispiel 1

Icon

Hier wird ein einfaches, leeres Array erstellt: 

$master.array =array alloc: size = 


Beispiel 2

Icon

Hier wird ein Array mit 4 internen Arrays erstellt: 

Zu erst werden alle Arrays erstellt. 

Erstelle Hauptarrays 
$master.array =array alloc: size =  

Erstelle Unterarrays 
$sub.array.1 =array alloc: size =  
$sub.array.2 =array alloc: size =   
$sub.array.3 =array alloc: size =  
$sub.array.4 =array alloc: size =  

Platziere die Arrays dann dort, wo sie benötigt werden. 

$master.array [ ] = $sub.array.1  
$master.array [ ] = $sub.array.2
$master.array [ ] = $sub.array.3 
$master.array [ 3 ] = $sub.array.4  

Um die internen Arrays abzufragen, verwendet man den folgenden Code: 

$sub.array.1 = $master.array [ ] 
$sub.array.2 = $master.array [ ] 
$sub.array.3 = $master.array [ ] 
$sub.array.4 = $master.array [ 3 ] 

 

Das wichtige bei Arrays ist, das sie Zeiger zu der tatsächlich in ihnen gespeicherten Informationen sind. 
Wenn zwei verschiedene Skripte auf $master.array zugreifen, dann greifen sie auf das physikalisch exakt gleiche Array zu und nicht etwa auf Kopien. 
Wenn ein Skript ein $master.array = null ausgibt, dann bleiben andere Skripte, die auch auf dieses Array zu greifen, unbeeinflusst davon. 
Mit dieser Aktion hat das betreffende Skript einzig seine Verbindung zum Speicherort der im Array gespeicherten Informationen unterbrochen. 
Um Informationen in einem Array zu löschen, muss man Array-Funktionen wie etwa remove item oder resize array verwenden. 


Write a comment…