Er der nogen der kender den dybere forskel i en Record struktur oprettet i TP7 og i Delphi 7. Årsag: jeg har et gammelt system som indeholder en del record strukturer, men de virker kun i delphi hvis jeg ændre størrelsen på hver enkelt felt med Addr kommandoen. Det er ligesom om der er noget mere overhead i delphi end der er i TP ?
mvh
pointman
Hej,
Det er fordi Delphi aligner dine elementer i din record til 8 bytes.
Dette gør den af hastighedsmæssige årsager.
Hvis du sætter din record til at være "packed" så skulle du kunne læse dine records direkte ind. Dog skal du lige check at nogle af standard typerne måske kan ha' ændret størrelse (f.eks. integer, fra 16 til 32 bit).
Eks.:
type
// TP7
record1 = record
id : Integer;
name : array[1..3] of char;
next : Word;
end;
// Delphi
record1 = packed record
id : SmallInt; // <-- svare til en 16-bit integer.
name : array[1..3] of char;
next : Word;
end;
Håber det hjælper dig lidt på vej.
/Michael.