Was genau meinst Du mit "mitkopiert" ?
Ist vorher Padding drin, hinterher nicht ?
Angenommen wir haben zwei Records
myRecordA, myRecordB: TMyRecord
mit der Definition
Delphi-Quellcode:
TMyRecord = record
someByte: Byte;
someInteger: Integer
end;
Und sagen wir myRecordA liegt beispielsweise so im Speicher:
Code:
Byte # Wert Gehört zu
0 42 someByte
1 FF (Padding)
2 FF (Padding)
3 FF (Padding)
4 00 someInteger
5 00 someInteger
6 00 someInteger
7 00 someInteger
Dann wurden früher ™ bei einer Zuweisung
myRecordB := myRecordA
nur die Bytes 0 und 4-7 in myRecordB gesetzt. Jetzt sind es alle.
Wenn sie in irgendeiner Version einmal nicht mit kopiert wurden, war das ein Bug.
Tatsächlich? Ich war die letzten Jahre auf 10.0 Seattle, und da wurden die Padding-Bytes bei einer Zuweisung definitiv nicht mitkopiert. Zu anderen Versionen kann ich nichts sagen. Ist ja auch eigentlich eine gute Sache dass es (jetzt) so ist.