Wenn du es wirklich statisch machen willst, dann hat der dizzy dir eine prima möglichkeit genannt wie du es realisieren kannst und das völlig ohne pointer, die hier vermutlich überflüssig sind. Über den recType hast du dann eine prima möglichkeit zu differenzieren. Ich hätte allerdings den Enum-typ dann auch als
recType äh case-dings benutz:
Delphi-Quellcode:
type
TFieldType = (tWord, tInteger, tChar, ...);
TMyType = record
RecType: TTypeInfo;
case TFieldType of
tWord: (EinWord: Word);
1tInteger: (EinInt: Integer);
tChar:(EinChar: Char);
end;
var
MyArray: array[0..3] of TMyType;
// und zugriff ist auch klar
case MyArray[2].RecType of
tChar: HabEinenCharGefunden(MyArray[2].EinChar);
...
end;
oder so ähnlich. Is natürlich nicht gerade sehr generisch. Dafür würde man dann lieber klassen nehmen.
mâxîmôv.
{KDT}