Difference between revisions of "Inherited/fr"
From Lazarus wiki
Jump to navigationJump to searchm |
|||
Line 17: | Line 17: | ||
// Do more things | // Do more things | ||
end; | end; | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == Cas des constructeurs et destructeurs == | ||
+ | Constructeur, Exemple 1 :<br> | ||
+ | <syntaxhighlight> | ||
+ | ... | ||
+ | TTest.Create; | ||
+ | begin | ||
+ | Inherited; // Toujours au début des constructeurs et démarre le constructeur (code seulement) de la classe parent | ||
+ | ... | ||
+ | end; | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Constructeur, exemple 2 :<br> | ||
+ | <syntaxhighlight> | ||
+ | ... | ||
+ | TTest.Create(...); | ||
+ | begin | ||
+ | Inherited Create(...); // Toujours au début des constructeurs et démarre le constructeur (code seulement) de la classe parent | ||
+ | ... | ||
+ | end; | ||
+ | ... | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Destructeur, exemple 3 :<br> | ||
+ | <syntaxhighlight> | ||
+ | TTest.Destroy; | ||
+ | begin | ||
+ | ... | ||
+ | Inherited; // Toujours à la fin des destructeurs et démarre le destructeur (code seulement) de la classe parent | ||
+ | end; | ||
+ | ... | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<br> | <br> |
Revision as of 23:17, 3 November 2016
│
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;
...