Bonjour, je voudrais me faire une petite fonction qui permet de créer un tableau dynamique à 2 dimensions de n'importe quel type. J'ai écrit cette fonction :
Je déclare un pointeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 template <class T> void T_Array2D(T ** _t, int _dim1, int _dim2) { _t = new T * [_dim1]; for (int dim_allouee = 0; dim_allouee < _dim1; ++dim_allouee) { _t[dim_allouee] = new T[_dim2]; } }
mlVec3 est un type créé par mon tuteur de TPs (il s'agit d'un tableau : double t[3] pour accueillir donc 3 doubles (pour des coordonnées 3D pour OpenGL)).
Code : Sélectionner tout - Visualiser dans une fenêtre à part mlVec3 ** tab;
Et j'appelle ma fonction :
Mais lorsque, j'utilise ensuite ce tableau tab, je me choppe une erreur de segmentation, je vais voir dans le gdb et je vois que le pointeur est nul (0x0).
Code : Sélectionner tout - Visualiser dans une fenêtre à part T_Array2D<mlVec3>(tab, _nBP+1, _nBP+1);
Si vous avez une idée...
Je vous remercie de votre réponse.
Partager