若要檢視英文版的文章,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

valarray::operator&=

 

取得位元項目 AND 在陣列中與指定的 valarray 的對應項目或與項目型別的值。


      valarray<Type>& operator&=(
   const valarray<Type>& _Right
);
valarray<Type>& operator&=(
   const Type& _Right
);

_Right

項目型別的 valarray 或值與要合併 valarray 的運算元,項目,與 valarray 運算元的邏輯 AND

項目為運算元的邏輯 valarray AND_Right.的 valarray

位元運算只能用於操作位元在 charint 資料型別和變數而 floatdoublelong doublevoidbool),更複雜的資料型別。

位元 AND 具有執行的圖表和邏輯 AND ,但適用於個別位元的層級上的資料型別。如果兩個位元是 true,該值會測量的位元 b1b2b1AND b2true ; false ,如果至少有一個是錯誤的。

// 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;
}
valarray 最初是:(0 0 0 2 0 4 0 6 0 8)。
最初正確 valarray 如下:(0 1 2 3 4 5 6 7 8 9)。
邏輯 AND operator=&項目由項目結果是
 valarray:(0 0 0 2 0 4 0 6 0 8)。

需求

標頭: <valarray>

命名空間: std

顯示: