Delphi-Quellcode:
implementation {$R *.dfm}
type tCDname=Record
interpret, album:
string[20];
end;
//unterrecord
type tEintrag=Record
CDname:tCDname;
genre:
string[15];
jahr:integer;
preis:real;
end;
//record
type
tAlleCDs =
Array of tEintrag;
var
CDArray:tAlleCDs;
i:integer;
procedure TForm1.FormCreate(Sender: TObject);
begin
i:=0;
end;
procedure eintrag_loeschen(
Index : Integer);
var i:Integer;
begin
if (
Index >= 0)
and Index < (Length(ArrayCDs))
then begin
for i:=Index+1
to High(tAlleCDs)
do
ArrayCDs[i-1]:=ArrayCDs[i];
// umkopieren
SetLength(ArrayCDs,Length(ArrayCDs)-1);
// anschließend Array verkleinern - fertig.
end
else
raise Exception.Create('
Ungültiger Index!'#13#10+
'
Minimum = 0'#13#10+
'
Maximum = '+InToStr(High(ArrayCDs))+#13#10+
'
Fehlerhafter Wert = '+IntToStr(
Index)+'
!');
end;
So geht es auch nicht, ist das, was du meintest?