有时有些程序要处理二进制位的有序集,每个位可能包含0(关)值或1(开)值。位是用来保存一组项或条件的yes/no信息(有时也称标志)的简洁方法。标准库提供的bitset类简化了位集的处理。
[注意
]
(1) 类似于vector,bitset类是一种类模板。而与vector不一样的是,bitset类型对象的区别仅在其长度而不在其类型
。在定义bitset时,要明确bitset含有多少位
,许在尖括号内给出它的长度值。
(2) 当用string对象初始化bitset对象时,string对象直接表示为位模式
。从string对象读入位集的顺序是从右向左
,即,string对象和bitset对象之间是反向转化的
:string对象的最右边字符(即下标最大的那个字符)用来初始化bitset对象的低阶位(即下标为0的位)。
(3) bitset对象上的操作,可以查阅C++ Primer P.90
C++位集操作示例
本文介绍C++中bitset类的基本使用方法,包括通过字符串初始化bitset对象、按指定数值初始化以及如何设置特定位置的位为1。示例程序展示了初始化bitset并计数其中1的数量。
1212

被折叠的 条评论
为什么被折叠?



