use a more c++-ish way of preventing the compiler from generating default operator=

when it's not wanted. Thanks to Christian Mayer for the tip.
This commit is contained in:
Benoit Jacob
2007-12-12 16:52:17 +00:00
parent fa8009c6b7
commit 7ddc13b9fa
12 changed files with 28 additions and 55 deletions

View File

@@ -26,8 +26,8 @@
#ifndef EIGEN_CONJUGATE_H
#define EIGEN_CONJUGATE_H
template<typename MatrixType> class Conjugate
: public MatrixBase<typename MatrixType::Scalar, Conjugate<MatrixType> >
template<typename MatrixType> class Conjugate : NoDefaultOperatorEquals,
public MatrixBase<typename MatrixType::Scalar, Conjugate<MatrixType> >
{
public:
typedef typename MatrixType::Scalar Scalar;
@@ -42,9 +42,6 @@ template<typename MatrixType> class Conjugate
Conjugate(const Conjugate& other)
: m_matrix(other.m_matrix) {}
// assignments are illegal but we still want to intercept them and get clean compile errors
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Conjugate)
private:
const Conjugate& _ref() const { return *this; }
int _rows() const { return m_matrix.rows(); }