Hallo,
ich versuche eine dreidimensionale Matrix zu erzeugen die im weiteren Verlauf mit Werten gefüllt werden soll.
Ich habe ursprünglich mit arrays gearbeitet musste da aber feststellen, dass bei den von mir gewünschen Elementzahlen (x=75, y=110, z=75) das Programm abstürzt.
Nun wurde mir empfohlen ich solle statt arrays die Klasse vector verwenden.
Ich habe es schließlich gescgafft eine 2-dimensionale Matrix zu erzeugen mit folgendem Code:
Nun wollte ich das ganze einfach erweitern mit einer dritten Komponente aber nun stürzt das Programm beim starten ab und liefert keine Matrix aber auch keine Fehlermeldung.
Wo steckt mein Fehler? Langsam bin ich etwas verzweifelt
Ich muss noch dazu sagen. Ich arbeite erst 2 Wochen mit C++ es kann also gut sein dass ich hier einfach nur dumme Anfängerfehler drin habe. Bitte seht es mir nach.
Liebe Grüße,
ela
ich versuche eine dreidimensionale Matrix zu erzeugen die im weiteren Verlauf mit Werten gefüllt werden soll.
Ich habe ursprünglich mit arrays gearbeitet musste da aber feststellen, dass bei den von mir gewünschen Elementzahlen (x=75, y=110, z=75) das Programm abstürzt.
Nun wurde mir empfohlen ich solle statt arrays die Klasse vector verwenden.
Ich habe es schließlich gescgafft eine 2-dimensionale Matrix zu erzeugen mit folgendem Code:
Code:
main(){
vector<vector<int> > matrix;
int dim1=2, dim2=5, dim3=3;
matrix = vector<vector<int> > (dim2);
for(int i = 0; i < dim1; i++){
matrix[i] = vector<int>(dim1);
for(int j = 0; j < dim2; j++){
matrix[i][j]= 0;
cout << matrix[i][j]<<" ";}
cout << '\n';}
getchar();
}
Nun wollte ich das ganze einfach erweitern mit einer dritten Komponente aber nun stürzt das Programm beim starten ab und liefert keine Matrix aber auch keine Fehlermeldung.
Code:
main(){
vector<vector<vector<int> > > matrix;
int dim1=2, dim2=10, dim3=3;
matrix = vector<vector<vector<int> > >(dim3);
for (int k=0; k < dim3; k++){
cout << "matrix" << " " << k << '\n';
for(int i = 0; i < dim1; i++){
//matrix[k][i] = vector<int>(dim1);
for(int j = 0; j < dim2; j++){
matrix[i][j][k]= 0;
cout << matrix[i][j][k]<<" ";}
cout << '\n';}
cout << '\n';}
getchar();
}
Wo steckt mein Fehler? Langsam bin ich etwas verzweifelt

Ich muss noch dazu sagen. Ich arbeite erst 2 Wochen mit C++ es kann also gut sein dass ich hier einfach nur dumme Anfängerfehler drin habe. Bitte seht es mir nach.
Liebe Grüße,
ela