Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
Delphi 12 Athens
|
AW: Der gute alte format Befehl
30. Dez 2010, 10:12
Nja, String, dynamische Arrays und Interfaces werden Initialisiert,
da hier Delphi die Speicherverwaltung übernimmt.
Ohne Initialisierung würde Delphi ja nie wissen, ob es was freigeben muß.
Beim String als Result, liegt dieses Problem darin behaftet, daß Delphi dieses intern in einen VAR-Parameter umwandelt.
function Test(Param1: Integer): String;
sieht also eigentlich so aus
procedure Test(Param1: Integer; var Result: String);
.
Der String selber wird also initialisiert, aber da eine interne lokale Variable an der aufrufenden Stelle genutzt wird, kommt es hier nun zu diesesm netten Phänomen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|