c++11 标准模板(STL)(std::bitset)(一)

定义于头文件 <bitset>

此头文件是通用工具库的一部分。

包含

<string>
<iosfwd>

template< std::size_t N >
class bitset;

类模板 bitset 表示一个 N 位的固定大小序列。可以用标准逻辑运算符操作位集,并将它与字符串和整数相互转换。

bitset 满足可复制构造 (CopyConstructible) 及可复制赋值 (CopyAssignable) 的要求。

模板形参

N - 要为 bitset 分配存储的位数

  

成员类型

reference

表示到一个位的引用的代理类
(类)

成员函数

(构造函数)

构造 bitset
(公开成员函数)

operator==operator!=

比较其内容
(公开成员函数)

元素访问

operator[]

访问指定的位
(公开成员函数)

test

访问特定位
(公开成员函数)

allanynone

(C++11)  

检查是否所有、任一或无位被设为 true
(公开成员函数)

count

返回设置为true的位的数量
(公开成员函数)

容量

size

返回位集能保有的位数大小
(公开成员函数)

修改器

operator&=operator|=operator^=operator~

进行二进制与、或、异或及非
(公开成员函数)

operator<<=operator>>=operator<<operator>>

进行二进制左移和右移
(公开成员函数)

set

将位置为 true 或者提供的值
(公开成员函数)

reset

将位置为 false
(公开成员函数)

flip

翻转位的值
(公开成员函数)

转换

to_string

返回数据的字符串表示
(公开成员函数)

to_ulong

返回数据的 unsigned long 整数表示
(公开成员函数)

to_ullong

(C++11)

返回数据的 unsigned long long 整数表示
(公开成员函数)

非成员函数

operator&operator|operator^

在 bitset 上执行二元逻辑操作
(函数)

operator<<operator>>

执行 bitset 的流输入和输出
(函数)

辅助类

std::hash<std::bitset>

(C++11)

std::bitset 的散列支持
(类模板特化)

注意

若在编译时 bitset 的大小未知,则可使用 std::vector<bool> 或 boost::dynamic_bitset

猜你喜欢

转载自blog.csdn.net/qq_40788199/article/details/130916335