vecpick.cc

来自「A C++ class library for scientific compu」· CC 代码 · 共 635 行 · 第 1/2 页

CC
635
字号
{    (*this) *= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator/=(const Vector<P_numtype2>& x){    (*this) /= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator%=(const Vector<P_numtype2>& x){    (*this) %= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator^=(const Vector<P_numtype2>& x){    (*this) ^= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator&=(const Vector<P_numtype2>& x){    (*this) &= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator|=(const Vector<P_numtype2>& x){    (*this) |= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator<<=(const Vector<P_numtype2>& x){    (*this) <<= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}template<typename P_numtype> template<typename P_numtype2>inline VectorPick<P_numtype>&VectorPick<P_numtype>::operator>>=(const Vector<P_numtype2>& x){    (*this) >>= _bz_VecExpr<VectorIterConst<P_numtype2> >(x.beginFast());    return *this;}/***************************************************************************** * Assignment operators with Range operand */template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator=(Range r){    (*this) = _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator+=(Range r){    (*this) += _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator-=(Range r){    (*this) -= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator*=(Range r){    (*this) *= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator/=(Range r){    (*this) /= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator%=(Range r){    (*this) %= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator^=(Range r){    (*this) ^= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator&=(Range r){    (*this) &= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator|=(Range r){    (*this) |= _bz_VecExpr<Range>(r);    return *this;}template<typename P_numtype>inline VectorPick<P_numtype>& VectorPick<P_numtype>::operator>>=(Range r){    (*this) >>= _bz_VecExpr<Range>(r);    return *this;}template<typename 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<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}template<typename P_numtype> template<typename 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.beginFast());    return *this;}/***************************************************************************** * Assignment operators with Random operand */template<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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<typename P_numtype> template<typename 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 + =
减小字号Ctrl + -
显示快捷键?