Como se inicializa uma StringList

12/12/2005

Sempre recebo uma Warning, na compilação por não inicializar uma variavel stringlist, como posso inicializa-la e onde?

try
StringList := TStringList.Create;
sLinha := padr(´CODIGO´,10);
sLinha := sLinha + padr(´DATA´,11);
sLinha := sLinha + padr(´NOME´,51);
finally
StringList.Free;
end;


Wgm8

Respostas

12/12/2005

Massuda

No código que você postou, se ocorrer uma exceção ao criar a StringList, o finally será executado usando um valor que não foi inicializado. Normalmente eu codificaria assim...
Objeto := TSeuObjeto.Create
try
  // faz alguma coisa com o objeto
finally
  Objeto.Free;
end;
...no seu caso, ficaria...
...
StringList := TStringList.Create; 
try 
  ...
finally 
  StringList.Free; 
end;



Responder Citar

12/12/2005

Rgaffo

faça assim:

[b:b01f8d5958]procedure [/b:b01f8d5958]Tform1.Button1Click(Sender : TObject);
[b:b01f8d5958]var[/b:b01f8d5958]
Lista : TStringList;
[b:b01f8d5958]Begin[/b:b01f8d5958]

Lista := TStringList.Create;

{ Agora faça o que quiser }
[b:b01f8d5958]End;[/b:b01f8d5958]


Responder Citar