operator&
Obtient de bits AND entre les éléments correspondants de deux valarrays également classés ou entre un valarray et une valeur spécifiée du type d'élément.
template<class Type>
valarray<Type> operator&(
const valarray<Type>& _Left,
const valarray<Type>& _Right
);
template<class Type>
valarray<Type> operator&(
const valarray<Type>& _Left,
const Type& _Right
);
template<class Type>
valarray<Type> operator&(
const Type& _Left,
const valarray<Type>& _Right
);
Paramètres
_Left
Le premier des deux valarrays dont les éléments respectifs sont d'être associés aux opérateurs de bits AND ou une valeur spécifiée du type d'élément à associer au niveau de le bit à chaque élément d'un valarray._Right
Le deuxième les deux valarrays dont les éléments respectifs sont d'être associés aux opérateurs de bits AND ou une valeur spécifiée du type d'élément à associer au niveau de le bit à chaque élément d'un valarray.
Valeur de retour
Un valarray dont les éléments sont la combinaison en ce qui concerne l'élément de l'opération de bits AND exécution d' _Left et d' _Right.
Notes
Une opération de bits peut être utilisée pour manipuler des bits d' char et les types de données et les variantes d' int et non sur float, double, longdouble, voidbool ou autre, des types de données plus complexes.
Opération de bits AND a la même table de vérité qu' AND logique mais s'applique au type de données au niveau de les bits.operator&& s'applique à un niveau d'élément, compter toutes les valeurs différentes de zéro comme valeur true, et le résultat est un valarray des valeurs booléennes.Opération de bits ANDoperator&, en revanche, peut entraîner un valarray des valeurs autres que 0 ou 1, selon les résultats de l'opération de bits.
Exemple
// valarray_op_bitand.cpp
// compile with: /EHsc
#include <valarray>
#include <iostream>
int main( )
{
using namespace std;
int i;
valarray<int> vaL ( 10 ), vaR ( 10 );
valarray<int> vaBWA ( 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 Left 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;
vaBWA = ( vaL & vaR );
cout << "The element-by-element result of "
<< "the bitwise operator & is the\n valarray: ( ";
for ( i = 0 ; i < 10 ; i++ )
cout << vaBWA [ i ] << " ";
cout << ")." << endl;
}
Configuration requise
en-tête : <valarray>
l'espace de noms : DST