Look here
vector<vector<double> >a(3,vector<double>(4));
You defined a as a vector having 3 elements of type vector<double>.
So a[0] has type vector<double>.
vector is a user defined type. It is not a pointer.
Question
vector<vector<double> >a(3,vector<double>(4));
double *p = a[0];
Why this is wrong, a[0]
is not the address of the first dimension of a
?
Solution
Look here
vector<vector<double> >a(3,vector<double>(4));
You defined a as a vector having 3 elements of type vector<double>.
So a[0] has type vector<double>.
vector is a user defined type. It is not a pointer.