E2185 La méthode virtuelle automatisée redéfinissant '%s' ne peut spécifier de dispid (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi)
dispid spécifiée pour la déclaration de procédure original virtuelle automated doit être utilisée par toutes les procédures de redéfinition dans les classes dérivées.
program Produce; type Base = class automated procedure Automatic; virtual; dispid 151; end; Derived = class (Base) automated procedure Automatic; override; dispid 152; end; procedure Base.Automatic; begin end; procedure Derived.Automatic; begin end; begin end.
La déclaration de redéfinition de Base.Automatic dans Derived (Derived.Automatic) essaie de définir (d'une manière erronée) une autre clause dispid pour la procédure.
program Solve; type Base = class automated procedure Automatic; virtual; dispid 151; end; Derived = class (Base) automated procedure Automatic; override; end; procedure Base.Automatic; begin end; procedure Derived.Automatic; begin end; begin end.
En enlevant la clause dispid incriminée, le programme se compilera.