【C++ STL 容器】——bitset

概念

bitset可以看做是二进制位的容器,并提供了位的相关操作函数。

常用函数

  • 构造赋值函数
    • bitset();
    • bitset(const bitset&):复制构造函数
    • bitset(unsigned long val):由无符号长整型数构建位容器
    • bitset(const string& str,size_t pos=0,size_t n = -1):由字符串创建位容器
    • bitset& operator=(const bitset&):赋值操作
  • 逻辑运算操作(与,或,非)
    • bitset& operator&=(const bitset&):返回两个位容器"与"后的引用,并修改第一个位容器值。
    • bitset& operator|=(const bitset&):返回两个位容器"或"后的引用,并修改第一个位容器值。
    • bitset& operator^=(const bitset&):返回两个位容器"异或"后的引用,并修改第一个位容器值。
    • bitset& operator<<=(size_t):返回位容器左移size_t位后的引用,并修改位容器值。
    • bitset& operator>>=(size_t):返回位容器右移size_t位后的引用,并修改位容器值。
    • bitset operator<<(size_t) const:返回位容器左移size_t位后的备份
    • bitset operator>>(size_t) const:返回位容器右移size_t位后的备份
    • bitset operator&(const bitset&,const bitset&):返回两个位容器"与"后的备份
    • bitset operator|(const bitset&,const bitset&):返回两个位容器"或"后的备份
    • bitset operator^(const bitset&,const bitset&):返回两个位容器"异或"后的备份
  • 其他操作函数
    • string to_String():位容器内容转化为字符串,便于显示
    • size_t size() const:返回位容器大小
    • size_t count() const:返回设置1位个数
    • bool any() const:是否有位设置1
    • bool none() const:是否没有位设置1
    • bool test(size_t n) const:测试某位是否为1
    • bool operator[](size_t n) const:随机访问位元素
    • unisigned long to_ulong() const:若没有溢出异常,返回无符号长整形数。
    • bitset& set():位容器所有位置1.
    • bitset& flip():位容器所有位翻转.
    • bitset& reset():位容器所有位置0.
    • bitset& set(size_t n,int val=1):设置某位为1或0,默认为1
    • bitset& reset(size_t):复位某位为0.
    • bitset flip(size_t n):翻转某位。

使用

str="010101";
bitset<40> bst(str);
bst.size();//40
bst.count();//3
str.size();//6
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值