Bonjour, je voulais savoir s'il était possible d'utiliser les multi_array en ne connaissant pas à l'avance le nombre de dimensions du "tableau multiple".

La taille de chaque dimension n'est bien évidemment pas non plus connue à l'avance mais les multi_array sont à la base fait pour ça.

Je m'explique peut-on déclarer un boost::multi_array de dimension très grande et ensuite diminuer sa taille.

Par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
#define MAX_DIMENSION 1000
 
multi_array<double, MAX_DIMENSION> monTableau;
Et ensuite modifier la dimension, une fois connue.

Pour arriver à 15, par exemple, au lieu de 1000 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
int NB_DIMENSION 15;
 
//monTableau.resize(NB_DIMENSION)