Les destructeurs sont des méthodes particulières. Ils sont appelés à chaque fois qu'un objet est détruit. Ils ont donc pour rôle principal de libérer la mémoire de façon correcte. En tant que fonction, ils ne prennent pas d'argument et n'ont pas de type de retour.
Les destructeurs sont essentiellement utiles lorsque des objets s'initialisent en s'allouant de la mémoire - usage de new, malloc ou toute autre fonction associée. Il est alors impératif de libérer cette mémoire lors de la destruction des objets.