【发布时间】:2009-10-01 11:14:17
【问题描述】:
可能是一个简单的问题,但我似乎遇到了程序员的障碍。 :)
我有三个布尔值:A、B 和 C。我想将状态组合作为无符号 tinyint(最大 255)保存到数据库中,并能够从保存的整数中导出状态。 即使只有有限数量的组合,我想避免将每个状态组合硬编码为特定值(例如,如果 A=true 和 B=true 的值为 1)。
我尝试为变量赋值(A=1,B=2,C=3)然后添加,但我无法区分 A 和 B 是否为真,即只有 C 为真。
我很困惑,但很确定这是可能的。 谢谢
【问题讨论】:
-
听起来你想要一个位域。考虑将它们编码为 2 的幂。
-
乔,为什么不将此作为答案发布?
-
好点。我想我只是想给出一个快速的指示而不是给出一个完整的答案。当“朝这个方向看”时,通常给出答案需要给出完整的代码示例。然后你被否决了......
标签: type-conversion