Bonjour,
Comme je suis encore d�butant en programmation... J'ai des fuites. Alors j'ai une question, je vous montre le code :
Le but du jeu ici est de changer l'ordre du tableau. Pour ce faire, je cr�e un nouveau tableau de la m�me taille, nomm� SeqAlt, puis j'affecte les valeurs de Sequence � SeqAlt.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 template<typename TYPE> void Array<TYPE>::Reverse(TYPE* Sequence, int TailleSequence) { TYPE SeqAlt[TailleSequence]; for (int i=0 ; i < TailleSequence ; i++) { SeqAlt[i] = Sequence[TailleSequence-1-i]; } delete[] Sequence; Sequence = SeqAlt; }
Jusque l� rien de bien m�chant on dirait. Mais probl�me, valgrind me dit qu'il y a une fuite de m�moire ; normal, le tableau Sequence n'est pas lib�r�... Donc, je mets un "delete[] Sequence" avant de faire la nouvelle affectation.
O� est le probl�me, selon vous ?
(Alors, 1. non, je ne voulais pas utiliser les std::vector, et 2. je voulais que SeqAlt ne soit pas en retour de la fonction mais bien pass� en adresse)
Le compilateur ne dit rien, mais � l'�xecution �a r�le beaucoup...
Sans le delete[], �a ne bug plus, mais il y a me semble-t-il des fuites de m�moire...
Partager