so gehts:
Delphi-Quellcode:
TRec1 = record
a : char;
b : char;
end;
TRec2 = record
c: char;
d: char;
end;
TRec1or2 = record
case Bool of
True: (Variante1: Rec1);
False: (Variante2: Rec2);
end;
RecArray:Array[0..4]of record;
Dabei ist das Array-Elemente so groß wie der größte Recordtyp - Wenn also TRec1 und TRec2 gleich groß sind wird nicht mehr speicher als normal verbraucht.