Hola amigos, una vez más requiero de su gran ayuda.
Tengo una clase definida de esta manera:
Código:
Individuo=class(TObject)
private
protected
public
VClasificacion:VectorIR;
VCoordenadas:VectorIR;
Inercia:Double;
VDistancias:VectorIR;
TieneClasesVacias:Boolean;
procedure CargarClasificacionYDistancias();
procedure GenerarVecino(CantiParticion:Integer);
procedure CGRealesParaClasificacion();
function RecalcularInercia:Double;
published
//destructor Destroy; override;
end;
Si tengo dos variables Var1 y Var 2 de tipo Individuo, de manera que dependiendo de una condición, no importa cual sea, se debe guardar el contenido de Var1 en Var2 para luego cambiar Var1 o bien destruirlo para luego reutilizarlo. La situación es la siguiente, si ejecuto el siguiente código:
Código:
Var2:=Var1;
Var1.Destroy;
Esto me destruye también a Var2, me suena que lo anterior lo que hace es una asignación de punteros y cuando cambio Var1 luego de guardarlo en Var2, se me cambia lo contenido en Var1.
Mi pregunta es: ¿existe una forma de realizar la asignación de modo que se me guarde una copia y no una referencia al mismo espacio de memoria?
Con el fin de modificar luego una de las variables manteniendose la otra intacta.
Gracias de antemano por su valiosa ayuda.