Parâmetro que possa receber mais de um tipo de classe

Delphi

13/09/2007

Colegas;
Quero criar uma procedure que receba um parâmetro, nesse parâmetro pretendo passar uma classe. Só que essa classe nem sempre será a mesma, como eu devo criar esse parâmetro, por exemplo:

Definição...
procedure Calcular(Parametro1: ????);


Chamada...
var
  Classe1 : TClass1; 
  Classe2 : TClass2;

procedure Calcular(Classe1);
procedure Calcular(Classe2);



Vispo

Vispo

Curtidas 0

Respostas

Rodc

Rodc

13/09/2007

Se as classes forem suas, você pode fazê-las descender de uma classe em comum e receber por parâmetro a classe pai.
Você também pode fazer criar uma interface e usá-las nas duas classes, recebendo por parâmetro a interface criada.
Ou você pode receber por parâmetro um TObject. Todas as classes de componentes derivam de TObject. Depois você faz TypeCast do parâmetro para uma variável.
Ex.
procedure Calcular(Parametro1: TObject)
var teste: TClasse1;
begin
teste = TClasse1(Parametro1);
end;


GOSTEI 0
Vispo

Vispo

13/09/2007

[b:5d428ae4e4]rodc[/b:5d428ae4e4], muito obrigado pela resposta!

Abraço!


GOSTEI 0
Raserafim

Raserafim

13/09/2007

neste tópico dei outra solução

[url]http://forum.devmedia.com.br/viewtopic.php?t=90000[/url]


GOSTEI 0
POSTAR