有没有办法将二进制值赋给 VB 变量?所有显而易见的选择都不起作用。我尝试过使用 &B
前缀,附加 b
但似乎没有任何效果。我寻找它的运气也不好。我的应用程序不需要这个,但我只是好奇,所以不需要替代解决方案。
[编辑] 为了澄清起见,我正在寻找(这似乎不可能)是如何将文字二进制数分配给变量,以类似于分配十六进制或八进制数的方式。我只是在寻找一种更具视觉吸引力的方式来为标志枚举分配值。
代码:
Dim num as Integer = &H100ABC 'Hex'
Dim num2 as Integer = &O123765 'Octal'
Dim myFantasy as Integer = &B1000 'What I would like to be able to do'
Dim myReality as Integer = 2 ^ 3 'What I ended up doing'
最佳答案
在这之后我可能会刺伤自己:
Convert.ToInt32("1100101", 2);
更严肃地说(注意到您已经更新了问题),对于标志 enums
您可能想要的是left shift operator ( <<
) :
Dim myReality as Integer = 1 << 0 // 1
Dim myAlternateReality as Integer = 1 << 1 // 2
Dim myParallelUniverse as Integer = 1 << 2 // 4
...
依此类推,最多 31 个。
关于vb.net - 分配二进制常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/660014/