Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.482 Beiträge
 
Delphi 12 Athens
 
#8

AW: Gibt es keine generischen Proceduren?

  Alt Gestern, 21:22
Ich weis das Thema ist schon fast 15 Jahre alt.
Um so erstaunlicher das Delphi noch immer diese Einschränkung gilt.
Wenn sowas geht, gibt es wirklich keinen sinnvollen Grund globale generische Procedure und Funktionen zu verbieten:
Delphi-Quellcode:
type
  TIfThenHelper = class helper for TObject
    class function IfThen<T>(AValue: Boolean; const ATrue: T; const AFalse: T): T; static;
  end;

implementation

class function TIfThenHelper.IfThen<T>(AValue: Boolean; const ATrue: T; const AFalse: T): T;
begin
  if AValue then
    Result := ATrue
  else
    Result := AFalse;
end;
Leider ist immer nur ein Helper pro Klasse und Unit gültig, was die Nützlichkeit einschränkt.
Es ist aber möglich für eine abgeleitete Klasse einen weiteren Helper zu deklarieren.
Dann kann man beide Helper gleichzeitig in dieser Klasse nutzen.
  Mit Zitat antworten Zitat