Hai l * c crash, vero?Originariamente inviato da RooccoXXI
Questo è il mio programma; compila ma non funziona...
Grosso modo come gli array di array, con la minima differenza che i vector ne semplificano la gestione. In ambedue i casi, però, per usare l'operatore[] DEVI specificare una dimensione prima.Credo di non aver capito bene come funzionano i vector di vector (i vettori a una dimensione li so usare!).
In read_Matrix() tu non specifici ne la dimensione del vector esterno ne quella del vector interno (che in questo caso è superflua).
codice:Matrix read_Matrix() { int l(0), c(0); double d(0); Matrix M; cout << "Matrix dimension: "; cin >> l >> c; M.resize(l); for(int i(0); i < l; i++) { for(int j(0); j < c; j++) { cout << "M_" << i << "_" << j << ": "; cin >> d; M[i].resize(c); M[i][j] = d; // o in alternativa M[i].push_back(d); } } return M; }