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 的操作数。

返回值

第一成员运算符将的副本替换序列顺序控制控件的 _Right。

第二个成员运算符与第一个相同,但是,与 规则引用声明符:&&

第三个成员运算符将 _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;
}
  

要求

Header: <valarray>

命名空间: std

请参见

参考

valarray 类