segunda-feira, 14 de setembro de 2009

Procedimentos com parâmetros opcionais

{Quando você declara o procedimento: }
procedure Esperar(Segundos: Byte); {Você está determinando que todas as vezes que o procedimento. Esperar for chamado, deverá ser passado um valor do tipo Byte. No entanto, esse tipo de declaração exige que em todas as chamadas ao procedimento Esperar seja especificado um parâmetro.

Se você fizer uma chamada do tipo:}


procedure TForm1.Button1Click(Sender: TObject);
begin
Esperar()
end; {Será gerado um erro do tipo: Not enough actual parameters. Mas você pode declarar e implementar o procedimento da seguinte forma:}


procedure Esperar(Segundos: Byte = 1);
begin
Sleep(Segundos * 1000);
end; {A declaração acima faz com que o procedimento Esperar assuma o valor 1 caso nenhum parâmetro seja passado. Assim você poderá fazer uma chamada ao procedimento em qualquer das situações abaixo:}


procedure TForm1.Button1Click(Sender: TObject);
begin
Esperar(); // nenhum parâmetro, será assumido o valor 1
Esperar(1);
Esperar // nenhum parâmetro, será assumido o valor 1
end;

Nenhum comentário:

Postar um comentário