📄 vecpick.cc
字号:
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator-=(const Vector<P_numtype2>& x)
{
(*this) -= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator*=(const Vector<P_numtype2>& x)
{
(*this) *= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator/=(const Vector<P_numtype2>& x)
{
(*this) /= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator%=(const Vector<P_numtype2>& x)
{
(*this) %= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator^=(const Vector<P_numtype2>& x)
{
(*this) ^= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator&=(const Vector<P_numtype2>& x)
{
(*this) &= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator|=(const Vector<P_numtype2>& x)
{
(*this) |= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator<<=(const Vector<P_numtype2>& x)
{
(*this) <<= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>&
VectorPick<P_numtype>::operator>>=(const Vector<P_numtype2>& x)
{
(*this) >>= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.begin());
return *this;
}
/*****************************************************************************
* Assignment operators with Range operand
*/
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator=(Range r)
{
(*this) = _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator+=(Range r)
{
(*this) += _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator-=(Range r)
{
(*this) -= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator*=(Range r)
{
(*this) *= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator/=(Range r)
{
(*this) /= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator%=(Range r)
{
(*this) %= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator^=(Range r)
{
(*this) ^= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator&=(Range r)
{
(*this) &= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator|=(Range r)
{
(*this) |= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator>>=(Range r)
{
(*this) >>= _bz_VecExpr<Range>(r);
return *this;
}
template<class P_numtype>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator<<=(Range r)
{
(*this) <<= _bz_VecExpr<Range>(r);
return *this;
}
/*****************************************************************************
* Assignment operators with VectorPick operand
*/
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) = _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator+=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) += _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator-=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) -= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator*=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) *= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator/=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) /= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator%=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) %= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator^=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) ^= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator&=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) &= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
template<class P_numtype> template<class P_numtype2>
inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator|=(const
VectorPick<P_numtype2>& x)
{
typedef VectorPickIterConst<P_numtype2> T_expr;
(*this) |= _bz_VecExpr<T_expr>(x.begin());
return *this;
}
/*****************************************************************************
* Assignment operators with Random operand
*/
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator=(Random<P_distribution>& rand)
{
(*this) = _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator+=(Random<P_distribution>& rand)
{
(*this) += _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator-=(Random<P_distribution>& rand)
{
(*this) -= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator*=(Random<P_distribution>& rand)
{
(*this) *= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator/=(Random<P_distribution>& rand)
{
(*this) /= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator%=(Random<P_distribution>& rand)
{
(*this) %= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator^=(Random<P_distribution>& rand)
{
(*this) ^= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator&=(Random<P_distribution>& rand)
{
(*this) &= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
template<class P_numtype> template<class P_distribution>
VectorPick<P_numtype>&
VectorPick<P_numtype>::operator|=(Random<P_distribution>& rand)
{
(*this) |= _bz_VecExpr<_bz_VecExprRandom<P_distribution> >
(_bz_VecExprRandom<P_distribution>(rand));
return *this;
}
BZ_NAMESPACE_END
#endif // BZ_VECPICK_CC
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -