E2513 Typparameter '%s' muss einen parameterlosen Konstruktor namens Create haben (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Dieser Fehler tritt auf, wenn ein generischer Typ keinen parameterlosen public-Konstruktor hat.


 program E2513;
 
 {$APPTYPE CONSOLE}
 
 uses
   SysUtils;
 
 type
   TMyClass = class
   private
     constructor Create();
   end;
 
   TMyGenericClass<T: constructor> = class
   end;
 
 constructor TMyClass.Create();
 begin
   //
 end;
 
 var
   GenObj: TMyGenericClass<TMyClass>;
   anObj: TMyClass;
 
 begin
    anObj := TMyClass.Create();
    Writeln('E2513 Type parameter ''%s'' must have one public parameterless constructor named Create');
 end.