Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#18

AW: generischen Typen als "irgendeinen" String-Typen deklarieren

  Alt 13. Sep 2010, 22:20
Das sage ich ja "man kann auf keine Eigenschaften und Methoden eines generischen Typs zugreifen".
Logisch, wenn du keine Instanz davon hast, oder?
Delphi-Quellcode:
type
  TFoo = class
  private
    FCaption: string;
  public
    procedure Bar;
    property Caption: string read FCaption write FCaption;
  end;

  TFooContainer<T: TFoo> = class
    procedure DoSomething(x: T);
  end;

procedure TFooContainer<T>.DoSomething(x: T);
begin
  x.Caption := 'Hello Himi';
  x.Bar();
end;

procedure TFoo.Bar;
begin
  ShowMessage(FCaption);
end;

var
  foo: TFoo;
begin
  foo := TFoo.Create;
  with TFooContainer<TFoo>.Create do
  begin
    DoSomething(foo);
    Free;
  end;
  foo.Free;
end;
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat