std::bitset<N>::all, std::bitset<N>::any, std::bitset<N>::none
ja.cppreference.net より
bool all() const;
|
(1) | (C++11 から noexcept) (C++23 から constexpr) |
bool any() const;
|
(2) | (C++11 から noexcept) (C++23 から constexpr) |
bool none() const;
|
(3) | (C++11 から noexcept) (C++23 から constexpr) |
1) 全てのビットが
true にセットされているか調べます。2) いずれかのビットが
true にセットされているか調べます。3) どのビットも
true にセットされていないか調べます。戻り値
1)
true
すべてのビットが
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++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 693 | C++98 |
メンバー関数
all()
は提供されていなかった
|
提供される |
関連項目
trueに設定されたビット数を返す
(公開メンバ関数) |
|
|
(C++20)
|
符号なし整数の
1
ビットの数を数える
(関数テンプレート) |