Inherited/fr
From Lazarus wiki
Jump to navigationJump to searchThe printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
Dans une méthode virtuelle, il est souvent nécessaire d'appeler l'implémentation de la méthode virtuelle de la classe parent. Ceci peut être fait avec le mot-clé inherited.
De la mêm façon, le mot-clé inherited peut être employé pour toute méthode de la classe parent.
Ce cas est le plus simple :
Type
TMyClass = Class(TComponent)
Constructor Create(AOwner : TComponent); override;
end;
Constructor TMyClass.Create(AOwner : TComponent);
begin
Inherited;
// Do more things
end;
Cas des constructeurs et destructeurs
Constructeur, Exemple 1 :
...
TTest.Create;
begin
Inherited; // Toujours au début des constructeurs et démarre le constructeur (code seulement) de la classe parent
...
end;
Constructeur, exemple 2 :
...
TTest.Create(...);
begin
Inherited Create(...); // Toujours au début des constructeurs et démarre le constructeur (code seulement) de la classe parent
...
end;
...
Destructeur, exemple 3 :
TTest.Destroy;
begin
...
Inherited; // Toujours à la fin des destructeurs et démarre le destructeur (code seulement) de la classe parent
end;
...