Added private, non-implemented assignment operators to functions that don't need them (fixes VC warning on /W4).

This commit is contained in:
Hauke Heibel 2009-09-27 17:03:02 +02:00
parent 13545eab9b
commit 3c74d6b7d4
8 changed files with 29 additions and 1 deletions

View File

@ -116,6 +116,9 @@ struct CommaInitializer
int m_row; // current row id int m_row; // current row id
int m_col; // current col id int m_col; // current col id
int m_currentBlockRows; // current block height int m_currentBlockRows; // current block height
private:
CommaInitializer& operator=(const CommaInitializer&);
}; };
/** \anchor MatrixBaseCommaInitRef /** \anchor MatrixBaseCommaInitRef

View File

@ -178,6 +178,9 @@ template<typename ExpressionType> class Cwise
protected: protected:
ExpressionTypeNested m_matrix; ExpressionTypeNested m_matrix;
private:
Cwise& operator=(const Cwise&);
}; };
/** \returns a Cwise wrapper of *this providing additional coefficient-wise operations /** \returns a Cwise wrapper of *this providing additional coefficient-wise operations

View File

@ -351,6 +351,8 @@ struct ei_scalar_multiple_op {
EIGEN_STRONG_INLINE const PacketScalar packetOp(const PacketScalar& a) const EIGEN_STRONG_INLINE const PacketScalar packetOp(const PacketScalar& a) const
{ return ei_pmul(a, ei_pset1(m_other)); } { return ei_pmul(a, ei_pset1(m_other)); }
const Scalar m_other; const Scalar m_other;
private:
ei_scalar_multiple_op& operator=(const ei_scalar_multiple_op&);
}; };
template<typename Scalar> template<typename Scalar>
struct ei_functor_traits<ei_scalar_multiple_op<Scalar> > struct ei_functor_traits<ei_scalar_multiple_op<Scalar> >
@ -378,6 +380,8 @@ struct ei_scalar_quotient1_impl {
EIGEN_STRONG_INLINE const PacketScalar packetOp(const PacketScalar& a) const EIGEN_STRONG_INLINE const PacketScalar packetOp(const PacketScalar& a) const
{ return ei_pmul(a, ei_pset1(m_other)); } { return ei_pmul(a, ei_pset1(m_other)); }
const Scalar m_other; const Scalar m_other;
private:
ei_scalar_quotient1_impl& operator=(const ei_scalar_quotient1_impl&);
}; };
template<typename Scalar> template<typename Scalar>
struct ei_functor_traits<ei_scalar_quotient1_impl<Scalar,true> > struct ei_functor_traits<ei_scalar_quotient1_impl<Scalar,true> >
@ -423,6 +427,8 @@ struct ei_scalar_constant_op {
EIGEN_STRONG_INLINE const Scalar operator() (int, int = 0) const { return m_other; } EIGEN_STRONG_INLINE const Scalar operator() (int, int = 0) const { return m_other; }
EIGEN_STRONG_INLINE const PacketScalar packetOp() const { return ei_pset1(m_other); } EIGEN_STRONG_INLINE const PacketScalar packetOp() const { return ei_pset1(m_other); }
const Scalar m_other; const Scalar m_other;
private:
ei_scalar_constant_op& operator=(const ei_scalar_constant_op&);
}; };
template<typename Scalar> template<typename Scalar>
struct ei_functor_traits<ei_scalar_constant_op<Scalar> > struct ei_functor_traits<ei_scalar_constant_op<Scalar> >

View File

@ -102,6 +102,9 @@ template<typename ExpressionType> class NestByValue
protected: protected:
const ExpressionType m_expression; const ExpressionType m_expression;
private:
NestByValue& operator=(const NestByValue&);
}; };
/** \returns an expression of the temporary version of *this. /** \returns an expression of the temporary version of *this.

View File

@ -73,6 +73,9 @@ class NoAlias
protected: protected:
ExpressionType& m_expression; ExpressionType& m_expression;
private:
NoAlias& operator=(const NoAlias&);
}; };
/** \returns a pseudo expression of \c *this with an operator= assuming /** \returns a pseudo expression of \c *this with an operator= assuming

View File

@ -211,6 +211,9 @@ class GeneralProduct<Lhs, Rhs, OuterProduct>
{ {
ei_outer_product_selector<(int(Dest::Flags)&RowMajorBit) ? RowMajor : ColMajor>::run(*this, dest, alpha); ei_outer_product_selector<(int(Dest::Flags)&RowMajorBit) ? RowMajor : ColMajor>::run(*this, dest, alpha);
} }
private:
GeneralProduct& operator=(const GeneralProduct&);
}; };
template<> struct ei_outer_product_selector<ColMajor> { template<> struct ei_outer_product_selector<ColMajor> {
@ -276,6 +279,9 @@ class GeneralProduct<Lhs, Rhs, GemvProduct>
ei_gemv_selector<Side,(int(MatrixType::Flags)&RowMajorBit) ? RowMajor : ColMajor, ei_gemv_selector<Side,(int(MatrixType::Flags)&RowMajorBit) ? RowMajor : ColMajor,
bool(ei_blas_traits<MatrixType>::ActualAccess)>::run(*this, dst, alpha); bool(ei_blas_traits<MatrixType>::ActualAccess)>::run(*this, dst, alpha);
} }
private:
GeneralProduct& operator=(const GeneralProduct&);
}; };
// The vector is on the left => transposition // The vector is on the left => transposition

View File

@ -137,6 +137,8 @@ class ProductBase : public MatrixBase<Derived>
void coeffRef(int,int); void coeffRef(int,int);
void coeff(int) const; void coeff(int) const;
void coeffRef(int); void coeffRef(int);
ProductBase& operator=(const ProductBase&);
}; };
template<typename NestedProduct> template<typename NestedProduct>

View File

@ -153,10 +153,12 @@ template<typename VectorsType, typename CoeffsType> class HouseholderSequence
} }
protected: protected:
typename VectorsType::Nested m_vectors; typename VectorsType::Nested m_vectors;
typename CoeffsType::Nested m_coeffs; typename CoeffsType::Nested m_coeffs;
bool m_trans; bool m_trans;
private:
HouseholderSequence& operator=(const HouseholderSequence&);
}; };
template<typename VectorsType, typename CoeffsType> template<typename VectorsType, typename CoeffsType>