Il y en a un où vous écrivez simplement array [rowSize] [colSize]. Un autre où vous le déclarez comme un tableau de pointeurs vers des tableaux utilisant new. (De How do I declare a 2d array in C++ using new?)Quelles sont les différentes façons de déclarer un tableau 2D en C++?
int** ary = new int*[rowCount];
for(int i = 0; i < rowCount; ++i)
ary[i] = new int[colCount];
Il devrait y avoir un à l'aide malloc. Y en a-t-il d'autres? Quels sont les avantages/inconvénients de chacun d'entre eux? Que diriez-vous de leur vitesse d'exécution/traitement?
(Ceci est une question d'entrevue. Donc, plus que suggérer la méthode la plus optimale, je dois savoir ce que chacune de ces méthodes ne)
Utiliser 'std :: vECTOR'. '' –
Tout ce que vous pouvez faire avec 'new', vous pouvez le faire avec' malloc', un 'static_cast', et certains de placement' new's. –
@BaummitAugen: 'std :: vector' ne fait pas un très bon tableau 2D, par lui-même. –