Bei VAR wird die Referenz unverändert reingegeben, da ist es egal.
Bei prodecure Test(S: WideString);
wird aber eine 100%-Kopie des Strings erstellt, bei Aufruf der Prozedur.
Bei LongStrings (AnsiString/RawByteString/UTF8String und UnicodeString) wird einfach nur die Referenzzählung schnell hochgezählt, was praktisch nicht auffällt.
Bei prodecure Test(const S: WideString);
passiert das nicht, da direkt mit der schreibgeschützten Referenz gearbeitet wird.
Ahh dann ist gut. Dachte schon VAR würde nicht gehen...
Was ist z.B. mit TObject... ? Das abgeleitete Object könnte ja in D2000 und XE7 unterschiedlich sein.
Mavarik