5

我正在尝试初始化 UInt16 的内联数组。对于 int 我可以执行以下操作:

int[] int_array = new[]{0,0,0,0};

同时使用 UInt16 在没有演员表的情况下不起作用:

UInt16[] uint16_array= new[]{(UInt16)0,(UInt16)0};

做这些演员很烦人。我想知道 C# 中是否有任何后缀来消除分配的歧义(比如 0.0f 表示浮点数)。

4

4 回答 4

16

我不认为有一个,但你为什么不这样做呢

UInt16[] uint16_array= new UInt16[] { 0, 0, 0, 0 };
于 2011-11-07T20:03:19.360 回答
5

C# 没有无符号 16 位整数的类型后缀。VB.NET 可以,仅供参考:

Dim number As UShort = 8US

这是另一个列出不同后缀的资源。

于 2011-11-07T20:07:10.503 回答
2

这是比 Corey 更短的方法:

ushort[] uint16_array = { 0, 0, 0, 0 };

(或者)

UInt16[] uint16_array = { 0, 0, 0, 0 };
于 2011-11-08T13:54:54.470 回答
0

http://msdn.microsoft.com/en-us/library/aa664674(v=VS.71).aspx

不幸的是,没有短后缀。

于 2011-11-08T14:00:17.347 回答