valarray::operator=
Присвоить элементов в valarray значения которого определяются непосредственно или как часть другое valarray или slice_array, gslice_array, mask_array или indirect_array.
valarray<Type>& operator=(
const valarray<Type>& _Right
);
valarray<Type>& operator=(
valarray<Type>&& _Right
);
valarray<Type>& operator=(
const Type& _Val
);
valarray<Type>& operator=(
const slice_array<Type>& _Slicearray
);
valarray<Type>& operator=(
const gslice_array<Type>& _Gslicearray
);
valarray<Type>& operator=(
const mask_array<Type>& _Maskarray
);
valarray<Type>& operator=(
const indirect_array<Type>& _Indarray
);
Параметры
_Right
Valarray, которое должно быть скопировано в valarray операнд._Val
Значения элементов valarray операнда._Slicearray
Slice_array, которое должно быть скопировано в valarray операнд._Gslicearray
Gslice_array, которое должно быть скопировано в valarray операнд._Maskarray
Mask_array, которое должно быть скопировано в valarray операнд._Indarray
Indirect_array, которое должно быть скопировано в valarray операнд.
Возвращаемое значение
Первый оператор члена заменяет контролируемая последовательность копией последовательности контролируемой _Right.
Второй оператор членов совпадает с первым, но с Декларатор ссылки Rvalue: &&.
Третий оператор члена заменяет каждый элемент контролируемой последовательности копией _Val.
Оставшиеся операторы члена заменяют элементы контролируемой последовательности выбранной их аргументами, которые созданы только operator[].
Если значение элемента в последовательности контролируемой заменой зависит от члена в начальной контролируемой последовательности, результат не определен.
Заметки
Если длина контролируемой последовательности изменяется, как правило, результат не определен. В этой реализации, однако, просто удалите все указатели или ссылки на элементы в контролируемой последовательности.
Пример
// valarray_op_assign.cpp
// compile with: /EHsc
#include <valarray>
#include <iostream>
int main( )
{
using namespace std;
int i;
valarray<int> va ( 10 ), vaR ( 10 );
for ( i = 0 ; i < 10 ; i += 1 )
va [ i ] = i;
for ( i = 0 ; i < 10 ; i+=1 )
vaR [ i ] = 10 - i;
cout << "The operand valarray va is:";
for ( i = 0 ; i < 10 ; i++ )
cout << " " << va [ i ];
cout << endl;
cout << "The operand valarray vaR is:";
for ( i = 0 ; i < 10 ; i++ )
cout << " " << vaR [ i ];
cout << endl;
// Assigning vaR to va with the first member functon
va = vaR;
cout << "The reassigned valarray va is:";
for ( i = 0 ; i < 10 ; i++ )
cout << " " << va [ i ];
cout << endl;
// Assigning elements of value 10 to va
// with the second member functon
va = 10;
cout << "The reassigned valarray va is:";
for ( i = 0 ; i < 10 ; i++ )
cout << " " << va [ i ];
cout << endl;
}
Требования
Заголовок:<valarray>
Пространство имен: std