Fórum Sobre Cópia de Vetores #279495
29/04/2005
0
Pesoal tenho o seguinte:
e tenho um outro vetor declarado da mesma forma em outro formulário... qdo eu atribuo o [b:430ffc7c1f]VetorVariant[/b:430ffc7c1f] do outro formulário para esse declarado acima, funciona, porém qdo libero o outro formulário da memória dando um free, acontece um erro de apontamento (imagino que liberando o outro formulário ele libera também o VetorVariant contido nele), mas o VetorVariant original tem que continuar com esses valores, agora a dúvida, existe uma forma de [b:430ffc7c1f]copiar[/b:430ffc7c1f] realmente esses vetores ou tenho de fazer isso via laço de repetição?
Type TVetorVariant = array of variant; var VetorVariant: TVetorVariant
e tenho um outro vetor declarado da mesma forma em outro formulário... qdo eu atribuo o [b:430ffc7c1f]VetorVariant[/b:430ffc7c1f] do outro formulário para esse declarado acima, funciona, porém qdo libero o outro formulário da memória dando um free, acontece um erro de apontamento (imagino que liberando o outro formulário ele libera também o VetorVariant contido nele), mas o VetorVariant original tem que continuar com esses valores, agora a dúvida, existe uma forma de [b:430ffc7c1f]copiar[/b:430ffc7c1f] realmente esses vetores ou tenho de fazer isso via laço de repetição?
Bruno Belchior
Curtir tópico
+ 0
Responder
Posts
29/04/2005
Massuda
...existe uma forma de [b:6f20f625f1]copiar[/b:6f20f625f1] realmente esses vetores ou tenho de fazer isso via laço de repetição?
Quando você faz...var A, B: TVetorVariant; ... SetLength(A, 10); for I := 0 to 9 do begin A[I] := .... end; B := A;
No seu caso, para copiar A em B, teria que fazer um loop:
SetLength(B, Length(A)); for I := 0 to Length(A) - 1 do B[I] := A[I];
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)