Skip to content

VorlageDokuCmdDict

Steffen Schuemann edited this page Oct 12, 2019 · 1 revision

#dict

Deklaration von Dictionaries

Syntax

#dict $Dict1 [$Dict2 [$Dict3 [...]]]

Beschreibung

Mittels dieses Befehls kann man Dictionaries erzeugen. Ein Dictionary ist ein Behälter von Werten die über einen frei wählbaren Schlüssel von (fast) beliebigem Typ anzusprechen sind.

Auf den Behälter kann mittels '$DictName[key]' zugegriffen werden. Neue Elemente fügt man in ein Dictionary ein, indem man sie über den Schlüssel mittels '$DictName[key]' zuweist.

Man kann den Schlüssel des $n-ten Elements mittels '$DictName($n)' erhalten, also auf das $n-te Element mittels '$DictName[$DictName($n)]' zugreifen. Achtung: Diese Methode ist extrem aufwändig, da $n interne Schritte nötig sind um den Key des $n-ten Elements zu erhalten.

Elemente kann man, analog zu Arrays mittels '$DictName[key]=' löschen.

Die Größe (Anzahl der Elemente) in einem Dictionary kann man durch '$DictName.size' ermitteln.

Legt man ein Dirctionary außerhalb von Funktionen oder Prozeduren an, so ist es global, d.h. von allen Funktionen, Prozeduren und den eingebetteten Befehlen der Einheiten aus sichtbar. Legt an es innerhalb der Funktionen oder Prozeduren an, so ist die Sichtbarkeit auf die betreffende beschränkt und es wird nach Verlassen gelöscht.

Achtung: Es ist nicht möglich #dict innerhalb der Zugvorlage (bzw. dem CR) zu verwenden.

Parameter

$Dict1, $Dict2, $Dict3
Bezeichner der Dictionaries die angelegt werden sollen. Groß- und Kleinschreibung wird unterschieden.

Beispiel

#dict $regionsDaten

#func initRegion
{
    $regionsDaten[''region.x+'/'+region.y+'/'+region.z]=[region.name,region.bauern]
    #return 1
}

Das Dict $regionsDaten wird mit einem Array befüllt.

Referenzen

#array, #var

Clone this wiki locally