J'ai affecté un tableau comme suit.Développement d'un tableau alloué dynamiquement
#include <iostream>
int main() {
const int first_dim = 3;
const int second_dim = 2;
// Allocate array and populate with dummy data
int** myArray = new int*[first_dim];
for (int i = 0; i < first_dim; i++) {
myArray[i] = new int[second_dim];
for (int j = 0; j < second_dim; j++) {
myArray[i][j] = i*second_dim + j;
std::cout << "[i = " << i << ", j = " << j << "] Value: " << myArray[i][j] << "\n";
}
}
// De-allocate array
for (int i = 0; i < first_dim; i++)
delete[] myArray[i];
delete[] myArray;
}
Disons que je veux ajouter un 4ème élément à la première dimension, à savoir myArray[3]
. Est-ce possible? J'ai entendu dire que les vecteurs sont beaucoup plus efficaces à cet effet, mais je ne sais pas ce qu'ils sont et je ne les ai jamais utilisés auparavant.
avez-vous essayé d'utiliser 'std :: vector'? On dirait que cela pourrait mieux convenir à vos besoins. –
Indépendamment des vecteurs (que vous devriez probablement utiliser dans ce cas), vous auriez dû utiliser delete [] au lieu de delete dans les deux cas, puisque vous avez alloué un tableau. – Asaf
L'utilisation de vecteurs n'est pas une tâche très difficile. –