Simplesmente não libera! Essa área fica alocada de forma fixa dentro do 
programa. Não se libera da memória. Vc deve fazer uso de matrizes esparsas, que 
usam alocação dinâmica de memória (ou seja, ponteiros!). Vc deve encontrar 
material sobre matrizes esparsas em apostilas ou outro tipo de material 
acadêmico na Internet, falando sobre este assunto. Mas fique esperto! Vc pode 
achar material sobre esse assunto usando linguagem C ou C++ para implementar 
matrizes esparsas.

Boa sorte.
Sds.

________________________________
De: delphi-br@yahoogrupos.com.br [delphi...@yahoogrupos.com.br] em Nome de 
Rodrigo Bevilacqua Marcondes [rodrig...@yahoo.com.br]
Enviado: segunda-feira, 26 de outubro de 2009 5:43
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Matriz em Delphi



Prezados colegas,

Tenho uma dúvida,

Tenho uma Matriz em Delphi que criei assim :

var
ITENS_ : array[1..MAX] of array[1..3] of String; //L C

Me gera uma matriz assim :
[ ][ ][ ]
[ ][ ][ ]
[ ][ ][ ]
até MAX

para acessar eu faço assim :

ITENS_[Linha][Coluna] = "OI"

a minha dúvida é isso fica na memória?
Se sim como faço para destruir da memória?

já tentei :

ITENS_.Free;
FreeAndNil(ITENS_)
for i to max
ITENS_[Linha][Coluna].Free

mas todos retorna Acess Violation.

Então eu não libero isso da memória , e uso centena de vezes.

E de vez em quando aparece um acess violation, dentro da rotina onde tem este 
vetor. Mas não sei se é ele.

Qualquer ajuda é bem vinda !!!

Obrigado desde já

Rodrigo ®¿®

.




[As partes desta mensagem que não continham texto foram removidas]

Responder a