常量表达式在“UInteger”类型中无法表示

时间:2012-04-20 07:14:00

标签: c# vb.net constant-expression

如果我在C#中运行以下代码,那么它运行正常

UInt32 a
a = 0x9E3779B9

但是当我在VB.Net中运行相同的代码时,它会给出错误“常量表达式在'UInteger'类型中无法表示”

Dim a As UInt32
a = &H9E3779B9

2 个答案:

答案 0 :(得分:5)

将UI放在最后

a = &H9E3779B9UI

选中此link

来自MSDN

  

您可以使用带有文字类型字符的带前缀的文字。该   以下示例显示了这一点。

Dim counter As Short = &H8000S
Dim flags As UShort = &H8000US

答案 1 :(得分:2)

我认为您可以通过查看this链接来解决问题 请参阅此链接中的变通方法部分

只需在文字的末尾添加“UI”:

      Dim x as UInteger = &HF2894233UI

否则& H返回一个带符号的整数