名前空間
変種
操作

std::bitset::flip

提供: cppreference.com
< cpp‎ | utility‎ | bitset
 
 
 
 
bitset<N>& flip();
(1)
bitset<N>& flip( size_t pos );
(2)

ビットを反転します。 つまり、 true の値をfalse に、 false の値を true に変更します。 ビットセットの一部またはすべてに対する論理否定演算と同等です。

1) すべてのビットを反転します (operator~ と同様ですが、その場で行います)。
2) 位置 pos のビットを反転します。

目次

[編集] 引数

pos - 反転するビットの位置

[編集] 戻り値

*this

[編集] 例外

1)
(なし) (C++11以前)
noexcept 指定:  
noexcept
  
(C++11およびそれ以降)
2) pos がビットセット内の有効な位置に対応しない場合、 std::out_of_range を投げます。

[編集]

#include <iostream>
#include <bitset>
 
int main()
{
    std::bitset<4> b;
 
    std::cout << b << "\n";
    std::cout << b.flip(0) << '\n';
    std::cout << b.flip(2) << '\n';
    std::cout << b.flip() << '\n';
}

出力:

0000
0001
0101
1010

[編集] 関連項目

ビットを true または指定された値に設定します
(パブリックメンバ関数) [edit]
ビットを false に設定します
(パブリックメンバ関数) [edit]
バイナリ論理積、論理和、排他的論理和、論理否定を行います
(パブリックメンバ関数) [edit]