Skip to content
  • Sébastien Villemot's avatar
    Refactor GeneralMatrix and ConstGeneralMatrix classes · 1ef1dedc
    Sébastien Villemot authored
    - Remove the GeneralMatrix(const ConstVector &) constructor, since it is hides
      a memory allocation (copying the ConstVector into a fresh Vector). This
      helped detecting and fixing several unneeded memory allocations. Some other
      memory allocations are now more visible (with an explicit Vector{}
      constructor).
    
    - Add checks in GeneralMatrix(Vector, …) and ConstGeneralMatrix(ConstVector, …)
      constructors for verifying that the {Const,}Vector has unit-stride (this was
      an implicit assumption so far) and is large enough for storing rows*cols
      elements.
    
    - Add GeneralMatrix::operator=(const ConstGeneralMatrix &).
    
    - Delete ConstGeneralMatrix::operator=().
    1ef1dedc