Noch eine Anmerkung: Du verwendest da den Begriff Class in deinen Variablen, es sind aber anscheinend Objekte und nicht Klassen. Das sind zwei sehr unterschiedliche Sachen. Eine Klasse kannst du übergeben um dann in der Funktion ein Objekt der Klasse zu erstellen.
TObject ist ein Objekt (Instanz einer Klasse), TClass ist eine Klasse mit der du ein Objekt erstellen kannst:
Delphi-Quellcode:
type
TMyObject = class(TObject)
public
function TueIrgendwas(): Boolean;
end;
TMyObjectClass = class of TMyObject;
{ TMyObject }
function TMyObject.TueIrgendwas: Boolean;
begin
Result := true;
end;
function MyFunction(AMyClass: TMyObjectClass ): Boolean;
var
MyObject: TMyObject;
begin
MyObject := AMyClass.Create;
try
Result := MyObject.TueIrgendwas();
finally
MyObject.Free;
end;
end;