Freigeben über


valarray::operator=

Weist Elemente an ein Array von Werten zu, dessen Werte entweder direkt oder als Teil eines anderen Wertarrays oder durch ein slice_array angegeben werden, ein gslice_array, mask_array, oder 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 
);

Parameter

  • _Right
    Der in den Operandenwertarray kopiert werden Wertarray.

  • _Val
    Der für Operandenwertarrays zugewiesen werden, Wert.

  • _Slicearray
    Das in den Operandenwertarray kopiert werden slice_array.

  • _Gslicearray
    Das in den Operandenwertarray kopiert werden gslice_array.

  • _Maskarray
    Das in den Operandenwertarray kopiert werden mask_array.

  • _Indarray
    Das in den Operandenwertarray kopiert werden indirect_array.

Rückgabewert

Der erste Memberoperator ersetzt die gesteuerte Sequenz durch eine Kopie der Sequenz, die durch _Right gesteuert wird.

Der zweite Memberoperator entspricht dem ersten, mit Rvalue-Verweisdeklarator: &&.

Der dritte Memberoperator ersetzt jedes Element der gesteuerten Sequenz durch eine Kopie von _Val.

Die übrigen Memberoperatoren ersetzen diese gesteuerten Elemente der Sequenz, die von ihrer Argumente ausgewählt wird, die nur von Operator [] generiert werden.

Wenn der Wert eines Members in der Ersatzgesteuerten Sequenz von einem Member der ursprünglichen Sequenz gesteuerten abhängt, ist das Ergebnis nicht definiert.

Hinweise

Wenn die Länge der Sequenz gesteuerten ändert, wird das Ergebnis im Allgemeinen undefiniert. In dieser Implementierung ist jedoch der Auswirkungen darin, alle Zeiger oder Verweise auf Elemente in der Sequenz gesteuerten ungültig zu machen.

Beispiel

// 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;
}
  

Anforderungen

Header: <valarray>

Namespace: std

Siehe auch

Referenz

valarray-Klasse