bit_and是C++中的內置函數,在將bitwise_and應用於其參數(由運算符&返回)之後,該函數用於返回值。
template struct bit_and { T operator() (const T& a, const T& b) const {return a&b;} typedef T type of first_argument; typedef T type of second_argument; typedef T result_type; };
T是所有參數的類型。
注意:
- 此類的對象可用於標準算法,例如變換或累加。
- 成員函數('operator()')返回其參數的bitwise_and。
我們必須包含庫“ functional”和“ algorithm”以分別使用bit_and和transform,否則它們將無法工作。
以下是顯示bit_and函數的程序:
程序1:
// C++ program to show the
// functionality of bit_and
#include <algorithm> // transform
#include <functional> // bit_and
#include <iostream> // cout
#include <iterator> // end
using namespace std;
int main()
{
// declaring the values
int xyz[] = { 500, 600, 300, 800, 200 };
int abc[] = { 0xf, 0xf, 0xf, 255, 255 };
int n = 5;
// defining results
int results[n];
// transform is used to apply
// bitwise_and on the arguments
transform(xyz, end(xyz), abc,
results, bit_and<int>());
// printing the resulting array
cout << "Results:";
for (const int& x : results)
cout << ' ' << x;
return 0;
}
輸出:
Results: 4 8 12 32 200
程序2:
// C++ program to show the
// functionality of bit_and
#include <algorithm> // transform
#include <functional> // bit_and
#include <iostream> // cout
#include <iterator> // end
using namespace std;
int main()
{
// declaring the values
int xyz[] = { 0, 1100 };
int abc[] = { 0xf, 0xf };
// defining results
int results[2];
// transform is used to apply
// bitwise_and on the arguments
transform(xyz, end(xyz), abc,
results, bit_and<int>());
// printing the resulting array
cout << "Results:";
for (const int& x : results)
cout << ' ' << x;
return 0;
}
輸出:
Results: 0 12
相關用法
- C++ log()用法及代碼示例
- C++ div()用法及代碼示例
- C++ fma()用法及代碼示例
- C++ map key_comp()用法及代碼示例
- C++ imag()用法及代碼示例
- C++ wcsncpy()用法及代碼示例
- C++ real()用法及代碼示例
- C++ map rbegin()用法及代碼示例
- C++ map rend()用法及代碼示例
- C++ valarray tan()用法及代碼示例
注:本文由純淨天空篩選整理自shubham tyagi 4大神的英文原創作品 bit_and function in C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。