Bonjour, j'ai appris que pour éviter les fuites de mémoire, il faut appelé delete pour chaque pointeurs alloué afin de libérer la mémoire.

Mais supposons que dans un programme j'ai une classe client et que je créé chaque client dynamiquement à la demande de l'usagé au fur et à mesure et que je les places dans un vecteur.

1) Vaut-il mieux que je créé un vecteur de pointeur Client ou bien un vecteur de Client ? Dans le cas des pointeurs de Client je devrais faire un delete sur chaque pointeurs du vecteur dans une boucle lors de la fermeture du programme.

Mais dans le cas ou c'est un vecteur de client comment je libère la mémoire ?

2) Étant donné que le libère la mémoire lorsque l'usagé choisis de quitter le programme, que se passe-t-il si il ferme le programme sans passer par la fonction quitter ? La mémoire ne sera pas libéré ou si windows fait ça tout seul ?

Merci