bitset: A bitset stores bits。大小通过参数传递,在编译时确定。可变的可参考 vector<bool>。

constructor

default:

integer value: 传入 unsigned long long val。

string:

C_string:

 // constructing bitsets
#include <iostream> // std::cout
#include <string> // std::string
#include <bitset> // std::bitset int main ()
{
std::bitset<> foo;
std::bitset<> bar (0xfa2);
std::bitset<> baz (std::string("")); std::cout << "foo: " << foo << '\n'; //
std::cout << "bar: " << bar << '\n'; //
std::cout << "baz: " << baz << '\n'; // return ;
}

Bit access

operator [ ]:

count: 返回 bieset 中 1 的个数。

size: 返回总的元素(0 or 1)的个数。

test: Returns whether the bit at position is set (i.e., whether it is one).

any: Returns whether any of the bits is set (i.e., whether at least one bit in thebitsetis set to one).

none(c++11):  Returns whether none of the bits is set (i.e., whether all bits in thebitsethave a value of zero).

all(c++11): Returns whether all of the bits in thebitsetare set (to one).

Bit operations

set: all bits(1) 设置所有的 bit 为 1; single bit(2) 设置单个 bit 为 1。

reset:  all bits(1) 设置所有 bit 为 0;single bit(2) 设置单个 bit 为 0。

flip:翻译为翻转, all bits(1) 翻转所有 bit ; single bit(2) 翻转单个 bit。

Bitset operations

to_string:

to_ulong:

to_ullong:

04-06 01:41