最終更新日時(UTC):
が更新

履歴 編集

function template
<bitset>

std::operator&

namespace std {
  template <size_t N>
  bitset<N> operator&(const bitset<N>& lhs, const bitset<N>& rhs);          // (1) C++03

  template <size_t N>
  bitset<N> operator&(const bitset<N>& lhs, const bitset<N>& rhs) noexcept; // (1) C++11

  template <size_t N>
  constexpr bitset<N> operator&(const bitset<N>& lhs, const bitset<N>& rhs) noexcept; // (1) C++23
}

概要

lhsrhsに対して、論理積(AND)したbitsetを生成する。

戻り値

lhsrhsの共通して1となるビットを1、それ以外のビットを0とするbitsetオブジェクトを生成して返す。
この関数は、以下のプログラムと同じ動作をする:

return bitset<N>(lhs) &= rhs;

例外

投げない。

#include <iostream>
#include <bitset>

int main()
{
  std::bitset<4> bs1("0011");
  std::bitset<4> bs2("0101");

  std::bitset<4> result = bs1 & bs2;

  std::cout << result << std::endl;
}

出力

0001

参照