Quand c'est un tableau de valeurs numériques, il n'y a aucun mal a utiliser la pile pour un gros tableau multidimensionnel, a condition qu'il ne soit pas instancié à de multiple reprises.
Il faudrait en savoir un peu plus sur ton code et l'utilisation dudit tableau.
Par contre, tu risques de dépasser les limites mémoires par défaut de ton compilateur, mais vu la taille de ton tableau (15 a 20 Mo?) et celle des mémoires vives des bécanes modernes, il suffira juste d'augmenter la taille de la pile, ce qui se fait avec une option de ton compilateur.
Un des intérêts des tableaux à la C en C++, c'est qu'ils peuvent être de taille fixe, mais variable entre deux appels:
Code :
- #include <iostream>
- int test(int i, int j) {
- int tableau[i][j];
- for (auto k = 0; k < i; ++k) {
- for (auto l = 0; l < j; ++l) {
- tableau[k][l] = k + l;
- }
- }
- for (auto k = 0; k < i; ++k) {
- for (auto l = 0; l < j; ++l) {
- std::cout << tableau[k][l];
- }
- std::cout << std::endl;
- }
- return 0;
- }
- int main ()
- {
- test(2,2);
- std::cout << std::endl;
- test(2,3);
- std::cout << std::endl;
- test(3,2);
- return 0;
- }
|
En sortie:
01
12
012
123
01
12
23
A+,
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --