
Hi Joerg, or anyone who can help! As I am still on my spline templates, I came on to the following beast: template<class T> struct index_vector : public vector<std::pair<T, vector<ublas::vector<T>::size_type> > > {}; This should be an index vector that relates to a double (first) a vector of indices (second) which happens to be different for each 'first'. So far so easy. I can say: index_vector<double> IY; IY.resize(5); IY[0].first = 3.14; IY[0].second.reset(vector<double>(3)); IY[0].second[2] = 1; But I cannot: index_vector<double> IZ(IY); or index_vector<double> IZ; IZ = IY; or IZ.reset(IY); This compiles, but gives me runtime assertions because of size mismatches. I think my derived class is not 'copy constructible' and 'assignable'. Is there a simple way to fix this? (I am not even sure whether this is a uBLAS matter. So please simple tell me, and I will try to learn the missing parts.) Thank you, Roland