将一组布尔值转换为数字

2024-03-19

这是我将用来获取一组三个布尔值并将其转换为 switch 语句的 int 的代码:

int bits = 0;
bool a = true, b = false, c = true;  // 101 = 5

bits = bits | a << 2;
bits = bits | b << 1;
bits = bits | c;

cout << bits;

基于这三个布尔值的组合状态,我有八个案例。我这样做对吗?

是的,不是语法意义上的,但如果有任何问题请指出。更正确的意思是“这是解决这个问题的最好方法吗?”


如果您使用 C++,您可以使用bitset<N>.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将一组布尔值转换为数字 的相关文章

随机推荐

  • 防止 tomcat 在部署时启动应用程序

    有什么方法可以告诉Tomcat不要自动启动我想要部署的应用程序吗 我想手动执行此操作 In CATALINA HOME conf server xml
  • 使用插值时添加换行符

    我有一些用于警报消息框的 html 使用插值 我可以重复使用相同的 html 来显示多个不同的警报消息 它看起来像这样 p myAlertMessage p 现在我想显示一条包含换行符的较长警报消息 但是 我似乎无法以任何会引入换行符的方式
  • 有没有一种简单的方法可以从 Kotlin 中的对象列表中获取数组?

    我希望能得到一个name列表中的数组MSetting 目前我用代码A来做 但是太复杂了 有没有简单的方法呢 Code A fun getName aList List
  • 如何安全地回显文字字符串“%I”?

    我怎样才能回显字符串 I以安全的方式 独立于是否echo命令行被放置在for I loop 例如 在命令提示符中 cmd gt gt gt rem echo is outside of for scope so this works gt
  • 为什么将模型上传到 HuggingFace 存储库的速度如此之慢?

    我有一个问题 我正在尝试将模型推送到 HuggingFace 存储库 问题是它说上传过去 16 小时 而这只是 pytorch model bin 文件 大约 850MB 我用的是LFS 我尝试手动将文件添加到存储库 这需要很长时间 我不愿
  • 在终端中根据括号或圆括号(仅限顶级)分割文本文件

    我有几个文本文件 utf 8 我想在 shell 脚本中处理它们 它们的格式并不完全相同 但如果我只能将它们分解成可食用的块 我就可以处理它 这可以用 C 或 python 编程 但我不喜欢 编辑 我用 C 编写了一个解决方案 看我自己的答
  • getCanonicalName 时抛出 ClassCircularityError

    异常堆栈 Exception in thread main java lang ClassCircularityError plugins agents Agent at java lang Class getDeclaringClass
  • 自定义工具快捷方式 Visual Studio

    有没有办法在 Visual Studio 中创建自定义工具的快捷方式 目前 我必须导航到解决方案中的工具 右键单击并运行自定义工具 如果我可以绑定快捷键或从工具栏运行该工具 那就太好了 有谁知道有什么方法可以做到这一点 我想你正在寻找这个
  • 错误消息是 (#12) bio 字段在 v2.8 及更高版本中已弃用

    我使用了 spring social facebook 的 2 0 3 RELEASE 版本和 Facebook 应用程序 api v2 8 我调用 Facebook 登录但返回了此消息 12 bio 字段在 v2 8 及更高版本中已弃用
  • Symfony / PHP - 存储单个值的最佳方式

    假设我有一个在 Symfony 3 2 Doctrine 上运行的应用程序 问题 存储会随着某些操作而改变的单个值的最佳方法是什么 第一个想法 我认为创建一个具有单个属性的实体将创建一个具有单个列的表 该列将具有单个值 更改某些操作 这不是
  • 用于拒绝请求的 NetflixOSS Zuul 过滤器

    我正在尝试在简单的 spring cloud Netflix Api 网关 反向代理 中使用 ZuulFilter 以便对自定义身份验证提供程序进行请求身份验证 通过 Rest 调用 过滤器应使用 401 拒绝未经授权的请求 并且不要将这些
  • 使用 JDBC 批量删除和插入

    我想知道是否可以使用批处理来执行参数化 DELETE 和 INSERT 语句 我知道如何插入多行 但是 我首先想做一个 DELETE 语句 这需要不同的参数 以下是我插入多个语句的方法 String query INSERT INTO TA
  • 如何将 Wicket 的 DownloadLink 与动态生成的文件一起使用?

    DownloadLink https ci apache org projects wicket apidocs 1 4 x org apache wicket markup html link DownloadLink html创建用于下
  • 类与二维数组

    在 PHP 中 二维数组和类哪个更好用 我举了一个例子来说明我的意思 Using a class class someClass public name public height public weight function constr
  • struct {0} 和 memset 0 有什么区别[重复]

    这个问题在这里已经有答案了 假设我们有这样的结构 struct A int x int y 有什么区别 A a 0 and A a memset a 0 sizeof A 没有任何 最终结果是两者都将结构体成员初始化为0 C99 标准 6
  • Java 有 IndexSet 和 Range 类吗?

    在 Objective C Cocoa 中 我们有NSIndexSet类 它通过保留范围数组来有效地存储一系列唯一索引 例如 集合 1 2 30 57 将存储为范围 1 30 和 57 而不是存储为 32 个数字的数组 这有助于以简单快速的
  • 表格滚动侦听器

    我正在尝试找出滚动表的事件 我可以获取左侧参数 例如使用 scrollTable offset left 但我无法添加其变化的监听器 我想要的就是监视表格左滚动参数的变化并将其应用到另一个 DOM 元素 这不是问题 我的表格的 HTML 示
  • C++ lambda回调触发事件

    我一直在尝试了解 C 中的回调功能 我想要实现的目标如下 我有两个对象 每个对象都有自己的线程 一个物体A有一个指向第二个对象的指针B 参见示例 class A public private std unique ptr b b class
  • XmlReaderSettings CheckCharacters=false 似乎不起作用

    我正在尝试反序列化来自 Rest 服务的 xml 响应 我正在实现 IXmlSerialized 因为 xml 相当具体 并且我进行自定义序列化 响应包含非法 xml 字符 但由于我无法修改 xml 所以我必须处理它们 解决方案似乎很简单
  • 将一组布尔值转换为数字

    这是我将用来获取一组三个布尔值并将其转换为 switch 语句的 int 的代码 int bits 0 bool a true b false c true 101 5 bits bits a lt lt 2 bits bits b lt