Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Gibt es in Pascal assozitive Arrays???


Yacoon - Fr 24.01.03 08:15
Titel: Gibt es in Pascal assozitive Arrays???
Gibt es in Pascal so etwas wie assoziative Arrays?
Der normale Array in Pascal ist wie folgt aufgebaut

meinArray[0] := Wert;

aber geht auch so etwas

meinArray[Schluessel] := Wert;

Weiß das jemand? assotitive Arrays nennt man unteranderem auch Hashtables. Vielleicht ist jemandem der Begriff geläufiger.


tommie-lie - Fr 24.01.03 16:07

mir ist nicht ganz klar, was du meinst, aber willst du vielleicht sowas haben:

Quelltext
1:
2:
var
  myArray: array[(key1, key2, key3, ...)] of Type;


Zugreifen würde man auf die Biester dann so:

Quelltext
1:
2:
myArray[key2] := myValue;
myLabel.Caption := myArray[key1];


Als "keys" kann man dann glaub' cih bis zu 2³² verschiedene Elemente nehmen.
Alternativ kannst du natürlich auch Konstanten benutzen. Wenn du dein Array beispielsweise mit array[schluessel] ansprechen willst, dann ließe sich das so machen:

Quelltext
1:
2:
3:
const schluessel = 0;
...
myArr[schluessel] := 1;

schluessel enthält also die Zahl 0 und spricht diese auch im Array an, aber du kannst im Quellcode bezeichner verwenden, die dem Programmierer mehr Infos geben, als nur eine 0.