Einzelnen Beitrag anzeigen

Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

Datenkopie vom einen Record in ein anderes

  Alt 12. Jan 2015, 12:28
Hallo zusammen,
ich hätte da mal eine Frage zum Kopieren von Daten zwischen zwei Records.

Delphi-Quellcode:
type
  tMyRecord1 : packed record
                 datum : tdatetime;
                 wert : integer;
                 feld : string[255];
               end;

var
  record1 : tMyrecord1;
  record2 : tMyrecord1;

// So funktioniert es immer
record1.datum:=record2.datum;
record1.wert:=record2.wert;
record1.feld:=record2.feld;
 
//so geht es auch
move(record2,record1,sizeof(tMyrecord));
aber was ist wenn ich
Delphi-Quellcode:
type
  tMyRecord1 : packed record
                 datum : tdatetime;
                 wert : integer;
                 feld : AnsiString;
               end;
oder
Delphi-Quellcode:
type
  tMyRecord1 : packed record
                 datum : tdatetime;
                 wert : integer;
                 feld : String;
               end;
verwende?
dann sollte doch mit einem move(record2,record1,sizeof(tMyrecord)); nur die Stringadresse kopiert werden und Änderungen in
record2.feld hätten gleichzeitig Änderungen in record1.feld zur Folge?
Oder liege ich da falsch?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat