Ein freundliches Hallo an alle,
Mal wieder ein Verständnisproblem mit Pointern! Ich habe mehrere Strukturen mit Daten erstellt, die vom Typ "T_DispData" sind. Da die Gesamtstruktur recht umfangreich ist hier nur ein Auszug:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| type T_Data = record Working : ^T_DispData; Data1 : T_DispData ; Data2 : T_DispData ; Data3 : T_DispData ; end; |
Working ist als Pointer auf die Daten deklariert, damit ich nicht in jeder Routine prüfen muß, welche Daten gerade genutzt werden.
In einer Routine, in der entschieden wird, welcher Datensatz gerade zu verwenden ist, wird die Variable "PDq" folgendermaßen deklariert:
Delphi-Quelltext
mit
Delphi-Quelltext
wird der Datensatz zur Bearbeitung zugewiesen. Es werden einige Daten eingetragen. Soweit so gut! Wenn ich nun vor dem Aufrufen weiterer Routinen "Working"auf diesen Datensatz setzen will:
Delphi-Quelltext
1:
| Cfg.Daten.Working := PDq; |
erhalte ich die Fehlermeldung "Inkompatible Typen"!?!?!?
Das würde ich gern verstehen!
Grüße von der Noerdsee
Peter
Moderiert von Narses: Topic aus Sonstiges (Delphi) verschoben am Di 12.01.2016 um 18:41