31 de jan. de 2005

Como clonar um objeto?

Do fórum ClubeDelphi:

Como faço para clonar um objeto?

Você pode incluir seu próprio método de clonagem na sua classe:

1 type 2 TEstado = class 3 valor1: byte; 4 valor2: byte; 5 public 6 function Clone: TEstado; 7 end; 8 9 ... 10 11 function TEstado.Clone: TEstado; 12 begin 13 Result := TEstado.Create; 14 Result.valor1 := Self.valor1; 15 Result.valor2 := Self.valor2; 16 end;

O esquema usual de clonagem de objetos costuma se basear na idéia usada em TPersistent.Assign. Para um exemplo, dê uma olhada nesta discussão no NG da Borland.

Nenhum comentário: