Deux possibilités, si les 2 dimensions sont necessaires:
Soit ton tableau a des dimensions que tu ne connais pas a la compilation, mais qui sont déterminées à la création et qui ne bougent plus, et tu as le conteneur standard std::array pour cela, soit ton tableau a des dimensions qui bougent parce qu'on lui rajoute/enlève des éléments, et tu as (entre autres) le conteneur std::vector pour cela, soit une des dimensions est fixée et pas l'autre, et tu peux employer un mix des deux.
Donc dans un cas:
On va créer un vecteur de h vecteurs sur l Ordi
std::vector<std::vector<Ordi> > tab(h, std::vector<Ordi>(l));
et dans l'autre cas:
On va créer un array de h arrays de l Ordi
std::array<std::array<Ordi, l>, h> tab;
ou avec une allocation sur le tas
std::array<std::array<Ordi, l>, h >& tab = *new std::array<std::array<Ordi, l>, h >;
On peut alors dans les deux cas accéder aux éléments comme tab[i][j] si necessaire.
Dans le cas de std::array, il faut que le compilo ait le flag pour être en mode C++11 (-std=c++11 avec g++) et que h et l soient const.
A+,
Message édité par gilou le 13-01-2013 à 15:18:21
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --