Bonjour,
Je rencontre actuellement un problème de fuite de mémoire qui semblerait dû à une fonction de création de tableaux multidimensionnels.
Voici ma fonction de création :
Je crée donc une matrice de la manière suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 double ** matrix(int nline, int nrow) { double **result; result = new double* [nline]; for ( int i=0 ; i < nline ; i++) { result[i] = new double [nrow]; } return result; }
et je désalloue la mémoire de la manière suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 double ** m = matrix(n,p)
Mon application consomme de la mémoire mais ne semble pas en libérer, un outil de recherche des fuites m'a guidé vers cette fonction mais je ne vois pas quoi modifier pour éviter les fuites.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 for ( int i=0 ; i < n ; i++) { delete[] m[i]; } delete[] m;
Je sollicite donc votre aide et remercie par avance toutes les personnes qui pourront m'aider.
Partager