Let KroneckerProduct inherit ReturnByValue to eliminate temporary evaluation. It's uncommon to store the product back to one of the operands.

This commit is contained in:
Chen-Pang He
2012-10-15 19:45:50 +08:00
parent 8284e7134b
commit 0508a0620b
3 changed files with 73 additions and 72 deletions

View File

@@ -165,9 +165,6 @@ template<typename Derived> class MatrixBase
template<typename ProductDerived, typename Lhs, typename Rhs>
Derived& lazyAssign(const MatrixPowerProductBase<ProductDerived, Lhs,Rhs>& other);
template<typename Lhs, typename Rhs>
Derived& lazyAssign(const KroneckerProduct<Lhs,Rhs>& other);
#endif // not EIGEN_PARSED_BY_DOXYGEN
template<typename OtherDerived>

View File

@@ -283,7 +283,6 @@ struct stem_function
}
// KroneckerProduct module
template<typename Lhs, typename Rhs> class KroneckerProduct;
template<typename Lhs, typename Rhs> class KroneckerProductSparse;
#ifdef EIGEN2_SUPPORT