Namespaces
Variants

operator&,|,^ (std::bitset)

From cppreference.net
Utilities library
헤더 파일에 정의됨 <bitset>
template < std:: size_t N >

std:: bitset < N > operator & ( const std:: bitset < N > & lhs,

const std:: bitset < N > & rhs ) ;
(1) (C++11부터 noexcept)
(C++23부터 constexpr)
template < std:: size_t N >

std:: bitset < N > operator | ( const std:: bitset < N > & lhs,

const std:: bitset < N > & rhs ) ;
(2) (C++11부터 noexcept)
(C++23부터 constexpr)
template < std:: size_t N >

std:: bitset < N > operator ^ ( const std:: bitset < N > & lhs,

const std:: bitset < N > & rhs ) ;
(3) (C++11부터 noexcept)
(C++23부터 constexpr)

두 비트셋 간의 이진 AND, OR, XOR 연산을 수행합니다, lhs rhs .

1) std:: bitset < N > 를 반환하며, 이는 lhs rhs 의 해당 비트 쌍에 대한 이진 AND 연산 결과를 포함합니다.
2) std:: bitset < N > 를 반환하며, 이는 lhs rhs 의 대응하는 비트 쌍에 대한 이진 OR 연산 결과를 포함합니다.
3) std:: bitset < N > 를 반환하며, 이는 lhs rhs 의 대응하는 비트 쌍에 대한 이진 XOR 연산 결과를 포함합니다.

목차

매개변수

lhs - 연산자 왼쪽에 있는 비트셋
rhs - 연산자 오른쪽에 있는 비트셋

반환값

1) std:: bitset < N > ( lhs ) & = rhs
2) std:: bitset < N > ( lhs ) | = rhs
3) std:: bitset < N > ( lhs ) ^ = rhs

예제

#include <bitset>
#include <iostream>
int main()
{
    std::bitset<4> b1("0110");
    std::bitset<4> b2("0011");
    std::cout << "b1 & b2: " << (b1 & b2) << '\n';
    std::cout << "b1 | b2: " << (b1 | b2) << '\n';
    std::cout << "b1 ^ b2: " << (b1 ^ b2) << '\n';
}

출력:

b1 & b2: 0010
b1 | b2: 0111
b1 ^ b2: 0101

참고 항목

이진 AND, OR, XOR 및 NOT 연산 수행
(public member function)