operator&,|,^(std::bitset)
Определено в заголовке <bitset> | ||
|---|---|---|
template< std::size_t N >
std::bitset<N> operator&( const std::bitset<N>& lhs,
const std::bitset<N>& rhs );
| (1) |
(noexcept с C++11) (constexpr с C++23) |
template< std::size_t N >
std::bitset<N> operator|( const std::bitset<N>& lhs,
const std::bitset<N>& rhs );
| (2) |
(noexcept с C++11) (constexpr с C++23) |
template< std::size_t N >
std::bitset<N> operator^( const std::bitset<N>& lhs,
const std::bitset<N>& rhs );
| (3) |
(noexcept с C++11) (constexpr с C++23) |
Выполняет побитовые операции И, ИЛИ и исключающее ИЛИ над двумя битовыми наборами, lhs и rhs.
1) Возвращает
std::bitset<N>, содержащий результат побитовой операции И над соответствующими парами битов lhs и rhs.
2) Возвращает
std::bitset<N>, содержащий результат побитовой операции ИЛИ над соответствующими парами битов lhs и rhs.
3) Возвращает
std::bitset<N>, содержащий результат побитовой операции исключающее ИЛИ над соответствующими парами битов lhs и rhs.Параметры
| 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
См. также
| выполняет побитовые операции И, ИЛИ, исключающее ИЛИ и НЕ (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/bitset/operator_logic2