====== Partie III – Destructeurs en C++ ====== [[in204:tds:sujets:td1|TD1]] Nous souhaitons que lorsque nous détruisons un compteur celui-ci signale sa destruction en affichant un message sur la console ainsi que sa valeur au moment de la destruction. ==== Question n° 1 ==== Définissez un destructeur en C++ qui effectue cette opération. Tester le code. Nous ajoutons un destructeur qui affiche à la fois le statut interne du compteur mais aussi l'adresse de celui, addresse qui est fourni par le pointeur ''this'' qui retourne l'adresse de la mémoire qui a été allouée lors de la création de l'objet. Ce pointeur ''this'' pointe soit sur la mémoire se situant sur le tas, mais aussi sur la mémoire allouée sur la pile ou dans la mémoire globale. struct MyCounter { ... ~MyCounter() { std::cout << "Delete counter: " << this << " ( " << count << ", " << max << ")" << std::endl; } ... }; Lorsque vous exécutez votre programme, chaque fois qu'un compteur est détruit, soit par sortie de la portée ou par appel de l'opérateur ''delete'', le message définit dans le destructeur ''~MyCounter'' s'affiche et vous indique quel compteur a été détruit et aussi dans quel ordre les objets ont été détruits.