valarray::operator=
指派項目至值指定直接或做為其他 valarray 或已由 slice_array, gslice_array, mask_array 或 indirect_array 的 valarray。
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 的運算元。
傳回值
第 10% 成員運算子用的複本來取代受控制序列順序由 _Right。
第二 + 成成員運算子與第一個相同,不過,與 右值參考宣告子:&&。
第三 + 成成員運算子用 _Val複本取代受控制序列的每個項目。
其餘成員運算子取代其引數選取之受控制序列的項目,是由 運算子 [只產生。
如果一個成員的值取代受控制序列的取決於初始受控制序列的一個成員,則結果會是未定義。
備註
如果受控制序列的長度變更,結果通常是未定義。 在這個實作,不過,效果只是無法使用所有指標或參考項目在受控制序列。
範例
// 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