名前空間
変種
操作

std::valarray::operator+=,-=,*=,/=,%=,&=,|=,<<=,>>=

提供: cppreference.com
< cpp‎ | numeric‎ | valarray
 
 
 
 
valarray<T> operator+=( const valarray<T>& v );

valarray<T> operator-=( const valarray<T>& v );
valarray<T> operator*=( const valarray<T>& v );
valarray<T> operator/=( const valarray<T>& v );
valarray<T> operator%=( const valarray<T>& v );
valarray<T> operator&=( const valarray<T>& v );
valarray<T> operator|=( const valarray<T>& v );
valarray<T> operator^=( const valarray<T>& v );
valarray<T> operator<<=( const valarray<T>& v );

valarray<T> operator>>=( const valarray<T>& v );
(1)
valarray<T> operator+=( const T& val );

valarray<T> operator-=( const T& val );
valarray<T> operator*=( const T& val );
valarray<T> operator/=( const T& val );
valarray<T> operator%=( const T& val );
valarray<T> operator&=( const T& val );
valarray<T> operator|=( const T& val );
valarray<T> operator^=( const T& val );
valarray<T> operator<<=( const T& val );

valarray<T> operator>>=( const T& val );
(2)

数値配列内の要素それぞれに複合代入演算子を適用します。

1) それぞれの要素はその要素の以前の値と v 内の対応する要素に対応する演算子を適用することによって取得された値が代入されます。
size() != v.size() の場合、動作は未定義です。
v 内のいずれかの値が代入中に計算され、 *this 内のいずれかの値に依存する場合、つまり、代入の右側の式が代入の左側の変数を参照する場合、動作は未定義です。
2) それぞれの要素はその要素の以前の値と val の値に対応する演算子を適用することによって取得された値が代入されます。

目次

[編集] 引数

v - 別の数値配列
val -

[編集] 戻り値

*this

[編集] 例外

(なし)

[編集] ノート

それぞれの演算子は以下の要件を満たす場合にのみ実体化できます。

  • 指定された演算子が型 T に適用可能である。
  • 結果の値が曖昧さなく T (1-3) または bool (4) に変換可能である。

関数は std::valarray と異なる戻り値の型を使用して実装することができます。 この場合、その置換型は以下の性質を持ちます。