« Programmation C++/Les classes » : différence entre les versions

Contenu supprimé Contenu ajouté
MacGeek (discussion | contributions)
MacGeek (discussion | contributions)
Ligne 79 :
 
==== Destructeurs ====
* Les destructeurs sont appelés lorsqu'une instance d'une classe est détruite. Cela arrive à la fin de l'exécution d'une fonction/méthode: si vous avez déclaré, localement à une fonction/méthode, un élément d'une classe A par ''A toto;'' alors à la fin de l'exécution de la fonction/méthode, le destructeur de la classe est appelé. Il est également appelé lorsqu'on détruit une instance grâce à <tt>delete</tt>. Il ne peut y avoir qu'un seul destructeur pour une même classe. S'il n'est pas explicitement présent dans la classe, il sera généré par le compilateur. La syntaxe est identique à celle du constructeur, mais le destructeur est introduit par un tilde:
<code>~A();</code>
* '''Syntaxe :''' ''(Pour une classe A)''
Le destructeur ne reçoit aucun argument. Il est utile lorsque par exemple, une classe Véhicule a un pointeur sur une classe Moteur. Si la classe est détruite sans appeler un destructeur, la classe moteur ne sera pas supprimée et il y aura une fuite de mémoire, la classe Moteur restant en mémoire mais étant inaccessible.
** ''~A()'';
 
=== Exemples de classes ===