Si j'ai une matrice NxN
vector< vector<int> > A;
Comment dois-je l'initialiser?
J'ai essayé sans succès:
A = new vector(dimension);
ni:
A = new vector(dimension,vector<int>(dimension));
Vous utilisez new
pour effectuer une allocation dynamique. Il retourne un pointeur qui pointe sur l'objet alloué dynamiquement.
Vous n'avez aucune raison d'utiliser new
, car A
est une variable automatique. Vous pouvez simplement initialiser A
en utilisant son constructeur:
vector<vector<int> > A(dimension, vector<int>(dimension));
Comme ça:
#include <vector>
// ...
std::vector<std::vector<int>> A(dimension, std::vector<int>(dimension));
(Pré-C++ 11, vous devez laisser des espaces entre les crochets.)