Zitat von
Neutral General:
Delphi-Quellcode:
var Str:String
MS:TMemoryStream;
l:Integer;
begin
MS := TMemoryStream.Create;
try
l:= length(Str);
MS.Write(l,SizeOf(Integer)); // nicht SizeOf(l) !!
MS.Write(Str[1],l);
// Stream speichern/laden/was auch immer
finally
MS.Free; // jaaa k FreeAndNil(MS) is noch besser... is es eigentlich "schlimm" wenn man nur .Free benutzt ?
end;
end;
Eine Frage: Warum nicht "SizeOf(l)"? Ich sehe keinen einzigen Grund, ausser sogar den Vorteil, dass SizeOf() den richtigen Wert liefert, wenn man den Datentyp von l später ändert. Warum also dieser Hinweis? Auf welcher Grundlage?