mtl::index_out_of_range
-
Ich lerne dieses Semester neu C++ und bekomme die oben genannte Fehlermeldung.
Leider weiß ich nicht wieso!
Hier das Programm:#include<iostream> #include<boost/numeric/mtl/mtl.hpp> using namespace std; using namespace mtl; int main() { unsigned size=3; dense_vector<double> b(size); b=6,6,6; dense2D<double> A(3,3); A= 4, 0, 0, 1, 4, 0, 1, 1, 4; dense_vector<double> y; unsigned s; for (unsigned i=0;i<size;i++){ s=b[i]; for (unsigned k=0;k<i;k++) { s=s-A[i][k]*y[k]; } y[i]=s/A[i][i]; } }
-
1. Das ist keine Fehlermeldung.
2. Wo passiert der Fehler?
b=6,6,6; [...] A= 4, 0, 0, 1, 4, 0, 1, 1, 4;WTF?
-
In Zeile 23 greifst du auf einen nicht-existierenden Index von y zu. Leg y mal so an:
dense_vector<double> y(size);Dann sollte das gehen.
-