E2076 Forme d'appel de méthode autorisée seulement pour méthodes de classe (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi)
Vous essayez d'appeler une méthode normale en ne fournissant que le type class et non une instance actuelle.
Ceci n'est autorisé que pour les méthodes de classe et constructeurs, non pour les méthodes et destructeurs normaux.
program Produce; type TMyClass = class (*...*) end; var MyClass : TMyClass; begin MyClass := TMyClass.Create; (*OK, constructeur*) Writeln(TMyClass.ClassName); (*OK, méthode de classe*) TMyClass.Destroy; (*<-- Message d'erreur ici*) end.
L'exemple essaie de détruire le type TMyClass - ceci n'a aucun sens et est par conséquent incorrect.
program Solve; type TMyClass = class (*...*) end; var MyClass : TMyClass; begin MyClass := TMyClass.Create; (*OK, constructeur*) Writeln(TMyClass.ClassName); (*OK, méthode de classe*) MyClass.Destroy; (*OK, appelé sur l'instance*) end.
Comme vous pouvez le voir, nous voulions vraiment détruire l'instance du type, et non le type lui-même.