C++ Standard Library C++ STL Library

C++ <valarray> - operator<<= Function



The C++ valarray::operator<<= function is used to apply compound assignment operator (left shift and assignment operator) to each element of the valarray.

Syntax

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

Parameters

v Specify another valarray.
val Specify a value of type T.

Return Value

Returns the left hand side valarray object.

Time Complexity

Depends on library implementation.

Example:

In the example below, the valarray::operator<<= function is used to perform left shift and assignment operation on each element of the given valarray.

#include <iostream>
#include <valarray>
using namespace std;
 
int main (){
  valarray<int> varr1 {50, 60, 70, 80};
  valarray<int> varr2 {1, 2, 1, 2};

  //result of varr1 << varr2 stored in varr1 
  varr1 <<= varr2;
  
  cout<<"varr1 contains: ";
  for(int i = 0; i < varr1.size(); i++)
    cout<<varr1[i]<<" ";

  //further performing left shift operation
  //on each elements of varr1 using val=2
  varr1 <<= 2;

  cout<<"\nvarr1 contains: ";
  for(int i = 0; i < varr1.size(); i++)
    cout<<varr1[i]<<" "; 
    
  return 0;
}

The output of the above code will be:

varr1 contains: 100 240 140 320 
varr1 contains: 400 960 560 1280 

❮ C++ <valarray> Library

5