Hi allerseits!
Ich mach´s kurz:
Delphi-Quellcode:
type
TTestTyp = record
TestDaten: Array [0..4] of Char; // <<<<<<<<<<<<<<<<<<<<
end;
(...)
var
TestTyp: TTestTyp;
begin
TestTyp.TestDaten[0] := 'H';
TestTyp.TestDaten[1] := 'a';
TestTyp.TestDaten[2] := 'l';
TestTyp.TestDaten[3] := 'l';
TestTyp.TestDaten[4] := 'o';
Ergebnis via WriteBuffer(TestTyp, sizeOf(TestTyp)) (in leere Datei) im HEX-Editor:
Hallo
---
Aber:
Delphi-Quellcode:
type
TTestTyp = record
TTestDaten: Array of Char; // <<<<<<<<<<<<<<<<<<<<
end;
(...)
var
TestTyp: TTestTyp;
begin
SetLength(TestTyp.TestDaten, 5); // merkwürdigerweise sagt er manchmal "constant object cannot be passed as var parameter" ???
TestTyp.TestDaten[0] := 'H';
TestTyp.TestDaten[1] := 'a';
TestTyp.TestDaten[2] := 'l';
TestTyp.TestDaten[3] := 'l';
TestTyp.TestDaten[4] := 'o';
Ergebnis via WriteBuffer(TestTyp, sizeOf(TestTyp)) (in leere Datei) im HEX-Editor:
`_'.}
(soll symbolisieren das murks rauskommt)
---
Kann mir jemand helfen? Versteh ich da etwas gänzlich falsch?