As discussed on ML:

* remove the automatic resizing feature of operator =
 * add function Matrix::set() to be used when the previous
   behavior is wanted
 * the default constructor of dynamic-size matrices now
   creates a "null" matrix (data=0, rows = cols = 0)
   instead of a 1x1 matrix
 * fix UnixX typos ;)
This commit is contained in:
Gael Guennebaud
2008-10-24 21:42:03 +00:00
parent 65abb4c52e
commit 8ea8b481de
10 changed files with 93 additions and 13 deletions

View File

@@ -95,6 +95,20 @@ template<typename MatrixType> void basicStuff(const MatrixType& m)
VERIFY_RAISES_ASSERT(m1 = (m2.block(0,0, rows-1, cols-1)));
}
// test set
{
VERIFY_IS_APPROX(m3.set(m1),m1);
MatrixType m4, m5;
VERIFY_IS_APPROX(m4.set(m1),m1);
if (MatrixType::RowsAtCompileTime==Dynamic && MatrixType::ColsAtCompileTime==Dynamic)
{
MatrixType m6(rows+1,cols);
VERIFY_RAISES_ASSERT(m5 = m1);
VERIFY_RAISES_ASSERT(m3 = m5);
VERIFY_RAISES_ASSERT(m3 = m6);
}
}
// test swap
m3 = m1;
m1.swap(m2);