E2513 Le paramètre type '%s' doit avoir un constructeur public sans paramètre nommé Create (Delphi)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Messages d'erreur et d'avertissement (Delphi)

Cette erreur se produit quand un type générique n'a pas de constructeur public sans paramètre.


 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.