std::bitset<N>::all, std::bitset<N>::any, std::bitset<N>::none
bool all() const; | (1) |
(noexcept с C++11) (constexpr с C++23) |
bool any() const; | (2) |
(noexcept с C++11) (constexpr с C++23) |
bool none() const; | (3) |
(noexcept с C++11) (constexpr с C++23) |
1) Проверяет, установлены ли все биты в
true.
2) Проверяет, установлен ли хотя бы один бит в
true.
3) Проверяет, не установлен ли ни один бит в
true.Возвращаемое значение
1)
true, если все биты установлены в true, иначе false.
2)
true, если хотя бы один бит установлен в true, иначе false.
3)
true, если ни один бит не установлен в true, иначе false.Пример
#include <bitset>
#include <iostream>
int main()
{
std::bitset<4> b1("0000");
std::bitset<4> b2("0101");
std::bitset<4> b3("1111");
std::cout
<< "bitset\t" << "all\t" << "any\t" << "none\n"
<< b1 << '\t' << b1.all() << '\t' << b1.any() << '\t' << b1.none() << '\n'
<< b2 << '\t' << b2.all() << '\t' << b2.any() << '\t' << b2.none() << '\n'
<< b3 << '\t' << b3.all() << '\t' << b3.any() << '\t' << b3.none() << '\n';
}
Вывод:
bitset all any none 0000 0 0 1 0101 0 1 0 1111 1 1 0
Сведения об исправлениях ошибок
Следующие отчёты об исправлениях ошибок, изменяющих поведение, были применены ретроспективно к ранее опубликованным стандартам C++.
| Отчёт об исправлении | Применён к | Поведение согласно опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 693 | C++98 | функция-член all() не была предоставлена | предоставлена |
См. также
возвращает количество битов, установленных в true (функция-член общего доступа) |
|
|
(C++20) | подсчитывает количество битов 1 в беззнаковом целом числе (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/bitset/all_any_none