[C++STL教程]6.bitset是什么?和bool有什么区别?【持续更新】零基础都能看懂的入门教程 您所在的位置:网站首页 二进制位值是什么意思 [C++STL教程]6.bitset是什么?和bool有什么区别?【持续更新】零基础都能看懂的入门教程

[C++STL教程]6.bitset是什么?和bool有什么区别?【持续更新】零基础都能看懂的入门教程

#[C++STL教程]6.bitset是什么?和bool有什么区别?【持续更新】零基础都能看懂的入门教程| 来源: 网络整理| 查看: 265

之前我们介绍过vector, queue, stack,map,set,今天我们介绍另外一个stl容器:bitset。

🎈 作者:Eriktse 🎈 简介:19岁,211计算机在读,现役ACM银牌选手🏆力争以通俗易懂的方式讲解算法!❤️欢迎关注我,一起交流C++/Python算法。(优质好文持续更新中……)🚀 🎈 个人博客:www.eriktse.com

本文仅从入门和实用角度进行讲解,主要针对初学者或竞赛向。如有不严谨的地方欢迎指正!

bitset 简介

bitset是C++标准模板库(STL)中的一种数据结构,它以十进制数的形式存储bit(二进制位)的值。它的目的是容纳在一定的空间中存储和操作非常小的数字,因为经常只需要一位来表示某个值是true还是false。

bitset可以存储大小可变的位,每一位存储一位数据,可用 true, false, 0, 1 来表示,能够灵活的操作每一位。

bitset提供一个非常有效的接口,用于在bit向量中快速地完成检索和更新操作,是对内存和硬件资源的高效利用。

初始化

使用bitset需要引入头文件#include 。

用以下代码初始化一个bitset变量。

bitset bs;//初始化一个大小为4的bitset

bitset即使初始化在栈空间(非全局变量)里,也会全部初始化为0。

bitset对象的构造函数要求参数为定义一个数字,这个数字就是你要使用的位的个数。例如,

bitset bs;

这个bitset bs定义一个bitset,它具有4个二进制位,每个位都是0。

bitset bs(5);//0101

要定义一个bitset并为每个位设定初始值,可以把对应的0和1用字符串来写

bitset bs2("1010101010"); 用法

其实可以直接当做一个可以做位运算的bool数组用,它经常用于动态规划中。

修改 bs[0] = 1; cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有