Cita:
|
Empezado por delphi.com.ar
Entonces si modifico S2 se modifica S1??
|
No, pero mira esto:
Código Delphi
[-]
var
S, T: String;
begin
S := 'Hola';
T := S;
Assert(Addr(Pointer(S)^) = Addr(Pointer(T)^));
S[1] := 'P';
Assert(Addr(Pointer(S)^) = Addr(Pointer(T)^));
end;
El primer Assert no falla, luego de la asignación, S y T realmente apuntan a lo mismo. El segundo Assert falla, al modificar S es cuando se crea la copia.
// Saludos