valarray::operator&=
Ottiene E bit per bit degli elementi di una matrice con elementi corrispondenti di un valarray specificato o con un valore del tipo di elemento.
valarray<Type>& operator&=(
const valarray<Type>& _Right
);
valarray<Type>& operator&=(
const Type& _Right
);
Parametri
- _Right
Il valarray o il valore di un tipo di elemento è identico a quello dell'operando valarray che venga combinato, ad esempio un elemento, da E logico con l'operando valarray.
Valore restituito
Un valarray dei cui elementi sono E logico come un elemento dell'operando valarray da _Right.
Note
Un'operazione bit per bit può essere utilizzata solo per modificare i bit in char e tipi di dati e varianti int e non in float, in double, in LONGdouble, in void, in bool, o in altri, tipi di dati più complessi.
Il bit per bit AND ha la stessa tabella di flusso E logico ma viene applicato al tipo di dati a livello di singoli bit.I bit specificati b1o b2, b1Eb2è true se entrambi i bit sono true, false se almeno uno è false.
Esempio
// valarray_class_op_bitand.cpp
// compile with: /EHsc
#include <valarray>
#include <iostream>
int main( )
{
using namespace std;
int i;
valarray<int> vaL ( 10 ), vaR ( 10 );
for ( i = 0 ; i < 10 ; i += 2 )
vaL [ i ] = 0;
for ( i = 1 ; i < 10 ; i += 2 )
vaL [ i ] = i-1;
for ( i = 0 ; i < 10 ; i++ )
vaR [ i ] = i;
cout << "The initial valarray is: ( ";
for ( i = 0 ; i < 10 ; i++ )
cout << vaL [ i ] << " ";
cout << ")." << endl;
cout << "The initial Right valarray is: ( ";
for ( i = 0 ; i < 10 ; i++ )
cout << vaR [ i ] << " ";
cout << ")." << endl;
vaL &= vaR;
cout << "The element-by-element result of "
<< "the logical AND operator&= is the\n valarray: ( ";
for ( i = 0 ; i < 10 ; i++ )
cout << vaL [ i ] << " ";
cout << ")." << endl;
}
Requisiti
intestazione: <valarray>
Spazio dei nomi: deviazione standard