std::bitset<N>:: operator==, std::bitset<N>:: operator!=
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::bitset
| Member types | ||||
| Member functions | ||||
|
bitset::operator==
bitset::operator!=
(until C++20)
|
||||
| Element access | ||||
| Capacity | ||||
| Modifiers | ||||
| Conversions | ||||
|
(C++11)
|
||||
| Non-member functions | ||||
| Helper classes | ||||
|
(C++11)
|
||||
|
bool
operator
==
(
const
bitset
&
rhs
)
const
;
|
(1) |
(noexcept начиная с C++11)
(constexpr начиная с C++23) |
|
bool
operator
!
=
(
const
bitset
&
rhs
)
const
;
|
(2) |
(noexcept начиная с C++11)
(до C++20) |
1)
Возвращает true, если все биты в
*
this
и
rhs
равны.
2)
Возвращает true, если какие-либо биты в
*
this
и
rhs
не равны.
|
Оператор
|
(since C++20) |
Параметры
| rhs | - | bitset для сравнения |
Возвращаемое значение
1)
true
если значение каждого бита в
*
this
равно значению соответствующего бита в
rhs
, в противном случае
false
.
2)
true
если
!
(
*
this
==
rhs
)
, иначе
false
.
Пример
Сравните заданные битовые наборы, чтобы определить, идентичны ли они:
Запустить этот код
#include <bitset> #include <iostream> int main() { std::bitset<4> b1(0b0011); std::bitset<4> b2(b1); std::bitset<4> b3(0b0100); std::cout << std::boolalpha; std::cout << "b1 == b2: " << (b1 == b2) << '\n'; std::cout << "b1 == b3: " << (b1 == b3) << '\n'; std::cout << "b1 != b3: " << (b1 != b3) << '\n'; // b1 == std::bitset<3>{}; // compile-time error: incompatible types }
Вывод:
b1 == b2: true b1 == b3: false b1 != b3: true