Como Definir Array Dinâmico
11/03/2019
0
Edisson Maciel
Posts
11/03/2019
Abraão Leopoldino
Use desta forma
SetLength(seuArray,tamanho);
12/03/2019
Edisson Maciel
Use desta forma
SetLength(seuArray,tamanho);
Prezado Abrãao,
Eu já usei esta definição e não funcionou. Um de vocês na época me disse que deveria ser algo como: SETLENGTH(ARRAY,0..5),SETLENGTH(ARRAY,0..10) para um array bidimensional ou algo assim. Você sabe outra forma de definir array dinâmico ou só tem a declaração acima? Obrigado, Edisson Sávio.
12/03/2019
Abraão Leopoldino
Mas bora lá como é o seu array, posta ele ai pra dar aquela analisada.
Possa ser que tenha se confundido na hora de usar o comando.
13/03/2019
Hélio Devmedia
Se o array for Multidimencional você deve adicionar o novo tamanho na frente, assim:
setlength(seuArrayMultidimencional, tamanhoPrimeiraDimensão, TamanhoSegundaDimensao, TamanhoTerceiraDimensao, etc...)
Exemplo para um array triDimensional:
var meuArray: Array of array of array of String; I: Integer; j: Integer; l: Integer; begin SetLength(meuArray, 3, 2, 3); for I := 0 to length(meuArray)-1 do begin Memo1.Lines.Add('->Elemento '+intToStr(I)); for j := 0 to Length(meuArray[I])-1 do begin Memo1.Lines.Add('-->SubElemento '+intToStr(j)); for l := 0 to Length(meuArray[I][j])-1 do Memo1.Lines.Add('--->SubSubElemento '+intToStr(l)); end; end;
resultado:
->Elemento 0 -->SubElemento 0 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2 -->SubElemento 1 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2 ->Elemento 1 -->SubElemento 0 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2 -->SubElemento 1 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2 ->Elemento 2 -->SubElemento 0 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2 -->SubElemento 1 --->SubSubElemento 0 --->SubSubElemento 1 --->SubSubElemento 2
Espero ter conseguido esclarecer. Um forte abraço e fique com Deus.
Clique aqui para fazer login e interagir na Comunidade :)